asyar-sdk 1.16.2 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +95 -42
- package/dist/ExtensionBridge.d.ts +1 -1
- package/dist/ExtensionBridge.d.ts.map +1 -1
- package/dist/ExtensionBridge.js +17 -13
- package/dist/ExtensionBridge.js.map +1 -1
- package/dist/ExtensionBridge.test.js +76 -101
- package/dist/ExtensionBridge.test.js.map +1 -1
- package/dist/ExtensionContext.d.ts +22 -57
- package/dist/ExtensionContext.d.ts.map +1 -1
- package/dist/ExtensionContext.js +84 -207
- package/dist/ExtensionContext.js.map +1 -1
- package/dist/ExtensionContext.test.js +91 -66
- package/dist/ExtensionContext.test.js.map +1 -1
- package/dist/ExtensionContextCore.d.ts +46 -0
- package/dist/ExtensionContextCore.d.ts.map +1 -0
- package/dist/ExtensionContextCore.js +149 -0
- package/dist/ExtensionContextCore.js.map +1 -0
- package/dist/PreferencesFacade.js +4 -9
- package/dist/PreferencesFacade.js.map +1 -1
- package/dist/PreferencesFacade.test.js +53 -55
- package/dist/PreferencesFacade.test.js.map +1 -1
- package/dist/cli/commands/attach.js +1 -1
- package/dist/cli/commands/attach.js.map +1 -1
- package/dist/cli/commands/build.d.ts +5 -1
- package/dist/cli/commands/build.d.ts.map +1 -1
- package/dist/cli/commands/build.js +43 -5
- package/dist/cli/commands/build.js.map +1 -1
- package/dist/cli/lib/manifest.d.ts +17 -5
- package/dist/cli/lib/manifest.d.ts.map +1 -1
- package/dist/cli/lib/manifest.js +125 -66
- package/dist/cli/lib/manifest.js.map +1 -1
- package/dist/{index.d.ts → contracts.d.ts} +23 -1
- package/dist/contracts.d.ts.map +1 -0
- package/dist/contracts.js +36 -0
- package/dist/contracts.js.map +1 -0
- package/dist/contracts.purity.test.d.ts +2 -0
- package/dist/contracts.purity.test.d.ts.map +1 -0
- package/dist/contracts.purity.test.js +42 -0
- package/dist/contracts.purity.test.js.map +1 -0
- package/dist/icons/AsyarIconElement.js +4 -9
- package/dist/icons/AsyarIconElement.js.map +1 -1
- package/dist/icons/AsyarIconElement.test.js +14 -16
- package/dist/icons/AsyarIconElement.test.js.map +1 -1
- package/dist/icons/IconRenderer.js +9 -15
- package/dist/icons/IconRenderer.js.map +1 -1
- package/dist/icons/IconRenderer.test.js +63 -65
- package/dist/icons/IconRenderer.test.js.map +1 -1
- package/dist/icons/iconData.js +2 -5
- package/dist/icons/iconData.js.map +1 -1
- package/dist/icons/index.js +3 -14
- package/dist/icons/index.js.map +1 -1
- package/dist/ipc/MessageBroker.d.ts.map +1 -1
- package/dist/ipc/MessageBroker.js +33 -6
- package/dist/ipc/MessageBroker.js.map +1 -1
- package/dist/ipc/MessageBroker.test.js +26 -28
- package/dist/ipc/MessageBroker.test.js.map +1 -1
- package/dist/ipc/devInspectorBridge.d.ts +57 -0
- package/dist/ipc/devInspectorBridge.d.ts.map +1 -0
- package/dist/ipc/devInspectorBridge.js +70 -0
- package/dist/ipc/devInspectorBridge.js.map +1 -0
- package/dist/ipc/devInspectorBridge.test.d.ts +2 -0
- package/dist/ipc/devInspectorBridge.test.d.ts.map +1 -0
- package/dist/ipc/devInspectorBridge.test.js +128 -0
- package/dist/ipc/devInspectorBridge.test.js.map +1 -0
- package/dist/ipc/namespaces.d.ts +1 -1
- package/dist/ipc/namespaces.d.ts.map +1 -1
- package/dist/ipc/namespaces.js +4 -7
- package/dist/ipc/namespaces.js.map +1 -1
- package/dist/ipc/namespaces.test.js +11 -13
- package/dist/ipc/namespaces.test.js.map +1 -1
- package/dist/lib/focusTracker.js +1 -4
- package/dist/lib/focusTracker.js.map +1 -1
- package/dist/lib/focusTracker.test.js +32 -57
- package/dist/lib/focusTracker.test.js.map +1 -1
- package/dist/lib/syncProviderBridge.js +1 -4
- package/dist/lib/syncProviderBridge.js.map +1 -1
- package/dist/lib/syncProviderBridge.test.js +60 -85
- package/dist/lib/syncProviderBridge.test.js.map +1 -1
- package/dist/lib/themeInjector.js +3 -8
- package/dist/lib/themeInjector.js.map +1 -1
- package/dist/lib/themeInjector.test.js +42 -44
- package/dist/lib/themeInjector.test.js.map +1 -1
- package/dist/search/SearchEngine.js +3 -10
- package/dist/search/SearchEngine.js.map +1 -1
- package/dist/search/SearchEngine.test.js +53 -55
- package/dist/search/SearchEngine.test.js.map +1 -1
- package/dist/search/index.js +2 -8
- package/dist/search/index.js.map +1 -1
- package/dist/search/textUtils.js +2 -6
- package/dist/search/textUtils.js.map +1 -1
- package/dist/search/textUtils.test.js +73 -75
- package/dist/search/textUtils.test.js.map +1 -1
- package/dist/search/types.js +1 -2
- package/dist/services/AIServiceProxy.js +2 -6
- package/dist/services/AIServiceProxy.js.map +1 -1
- package/dist/services/AIServiceProxy.test.js +69 -71
- package/dist/services/AIServiceProxy.test.js.map +1 -1
- package/dist/services/ActionServiceProxy.d.ts.map +1 -1
- package/dist/services/ActionServiceProxy.js +14 -13
- package/dist/services/ActionServiceProxy.js.map +1 -1
- package/dist/services/ActionServiceProxy.test.js +28 -23
- package/dist/services/ActionServiceProxy.test.js.map +1 -1
- package/dist/services/ApplicationService.js +2 -6
- package/dist/services/ApplicationService.js.map +1 -1
- package/dist/services/ApplicationService.test.js +108 -110
- package/dist/services/ApplicationService.test.js.map +1 -1
- package/dist/services/BaseServiceProxy.js +3 -7
- package/dist/services/BaseServiceProxy.js.map +1 -1
- package/dist/services/CacheServiceProxy.js +2 -6
- package/dist/services/CacheServiceProxy.js.map +1 -1
- package/dist/services/CacheServiceProxy.test.js +21 -23
- package/dist/services/CacheServiceProxy.test.js.map +1 -1
- package/dist/services/ClipboardHistoryServiceProxy.js +6 -10
- package/dist/services/ClipboardHistoryServiceProxy.js.map +1 -1
- package/dist/services/ClipboardHistoryServiceProxy.test.js +106 -108
- package/dist/services/ClipboardHistoryServiceProxy.test.js.map +1 -1
- package/dist/services/CommandServiceProxy.js +7 -11
- package/dist/services/CommandServiceProxy.js.map +1 -1
- package/dist/services/CommandServiceProxy.test.js +37 -39
- package/dist/services/CommandServiceProxy.test.js.map +1 -1
- package/dist/services/EntitlementServiceProxy.js +2 -6
- package/dist/services/EntitlementServiceProxy.js.map +1 -1
- package/dist/services/EntitlementServiceProxy.test.js +16 -18
- package/dist/services/EntitlementServiceProxy.test.js.map +1 -1
- package/dist/services/ExtensionManagerProxy.js +2 -6
- package/dist/services/ExtensionManagerProxy.js.map +1 -1
- package/dist/services/ExtensionManagerProxy.test.js +42 -44
- package/dist/services/ExtensionManagerProxy.test.js.map +1 -1
- package/dist/services/ExtensionRpc.d.ts +90 -0
- package/dist/services/ExtensionRpc.d.ts.map +1 -0
- package/dist/services/ExtensionRpc.js +277 -0
- package/dist/services/ExtensionRpc.js.map +1 -0
- package/dist/services/ExtensionRpc.test.d.ts +2 -0
- package/dist/services/ExtensionRpc.test.d.ts.map +1 -0
- package/dist/services/ExtensionRpc.test.js +259 -0
- package/dist/services/ExtensionRpc.test.js.map +1 -0
- package/dist/services/ExtensionStateProxy.d.ts +44 -0
- package/dist/services/ExtensionStateProxy.d.ts.map +1 -0
- package/dist/services/ExtensionStateProxy.js +115 -0
- package/dist/services/ExtensionStateProxy.js.map +1 -0
- package/dist/services/ExtensionStateProxy.test.d.ts +2 -0
- package/dist/services/ExtensionStateProxy.test.d.ts.map +1 -0
- package/dist/services/ExtensionStateProxy.test.js +158 -0
- package/dist/services/ExtensionStateProxy.test.js.map +1 -0
- package/dist/services/FeedbackServiceProxy.js +2 -6
- package/dist/services/FeedbackServiceProxy.js.map +1 -1
- package/dist/services/FeedbackServiceProxy.test.js +31 -33
- package/dist/services/FeedbackServiceProxy.test.js.map +1 -1
- package/dist/services/FileManagerServiceProxy.js +2 -6
- package/dist/services/FileManagerServiceProxy.js.map +1 -1
- package/dist/services/FileManagerServiceProxy.test.js +21 -23
- package/dist/services/FileManagerServiceProxy.test.js.map +1 -1
- package/dist/services/FileSystemWatcherService.js +2 -6
- package/dist/services/FileSystemWatcherService.js.map +1 -1
- package/dist/services/FileSystemWatcherService.test.js +45 -47
- package/dist/services/FileSystemWatcherService.test.js.map +1 -1
- package/dist/services/IAIService.js +1 -2
- package/dist/services/ICacheService.js +1 -2
- package/dist/services/IClipboardHistoryService.js +1 -2
- package/dist/services/ICommandService.js +1 -2
- package/dist/services/IEntitlementService.js +1 -2
- package/dist/services/IExtensionManager.js +1 -2
- package/dist/services/IFeedbackService.js +1 -2
- package/dist/services/IFileManagerService.js +1 -2
- package/dist/services/IInteropService.js +1 -5
- package/dist/services/IInteropService.js.map +1 -1
- package/dist/services/INotificationService.js +1 -2
- package/dist/services/IOAuthService.js +1 -2
- package/dist/services/IPowerService.js +1 -2
- package/dist/services/IPreferencesService.js +1 -2
- package/dist/services/ISelectionService.js +1 -2
- package/dist/services/ISettingsService.js +1 -2
- package/dist/services/IShellService.js +1 -2
- package/dist/services/IStatusBarService.js +1 -2
- package/dist/services/IStorageService.js +1 -2
- package/dist/services/ISystemEventsService.js +1 -2
- package/dist/services/ISystemEventsService.js.map +1 -1
- package/dist/services/ITimerService.js +1 -2
- package/dist/services/InteropServiceProxy.js +2 -6
- package/dist/services/InteropServiceProxy.js.map +1 -1
- package/dist/services/InteropServiceProxy.test.js +19 -21
- package/dist/services/InteropServiceProxy.test.js.map +1 -1
- package/dist/services/LogService.js +1 -2
- package/dist/services/LogServiceProxy.js +2 -6
- package/dist/services/LogServiceProxy.js.map +1 -1
- package/dist/services/LogServiceProxy.test.js +43 -45
- package/dist/services/LogServiceProxy.test.js.map +1 -1
- package/dist/services/NetworkServiceProxy.js +2 -6
- package/dist/services/NetworkServiceProxy.js.map +1 -1
- package/dist/services/NetworkServiceProxy.test.js +20 -22
- package/dist/services/NetworkServiceProxy.test.js.map +1 -1
- package/dist/services/NotificationServiceProxy.js +2 -6
- package/dist/services/NotificationServiceProxy.js.map +1 -1
- package/dist/services/NotificationServiceProxy.test.js +39 -41
- package/dist/services/NotificationServiceProxy.test.js.map +1 -1
- package/dist/services/OAuthServiceProxy.js +2 -6
- package/dist/services/OAuthServiceProxy.js.map +1 -1
- package/dist/services/OAuthServiceProxy.test.js +42 -44
- package/dist/services/OAuthServiceProxy.test.js.map +1 -1
- package/dist/services/PowerServiceProxy.js +2 -6
- package/dist/services/PowerServiceProxy.js.map +1 -1
- package/dist/services/PowerServiceProxy.test.js +24 -26
- package/dist/services/PowerServiceProxy.test.js.map +1 -1
- package/dist/services/PreferencesServiceProxy.js +2 -6
- package/dist/services/PreferencesServiceProxy.js.map +1 -1
- package/dist/services/PreferencesServiceProxy.test.js +22 -24
- package/dist/services/PreferencesServiceProxy.test.js.map +1 -1
- package/dist/services/SelectionServiceProxy.js +2 -6
- package/dist/services/SelectionServiceProxy.js.map +1 -1
- package/dist/services/SelectionServiceProxy.test.js +20 -22
- package/dist/services/SelectionServiceProxy.test.js.map +1 -1
- package/dist/services/SettingsServiceProxy.js +2 -6
- package/dist/services/SettingsServiceProxy.js.map +1 -1
- package/dist/services/SettingsServiceProxy.test.js +18 -20
- package/dist/services/SettingsServiceProxy.test.js.map +1 -1
- package/dist/services/ShellServiceProxy.js +2 -6
- package/dist/services/ShellServiceProxy.js.map +1 -1
- package/dist/services/ShellServiceProxy.test.js +92 -94
- package/dist/services/ShellServiceProxy.test.js.map +1 -1
- package/dist/services/StatusBarServiceProxy.js +9 -13
- package/dist/services/StatusBarServiceProxy.js.map +1 -1
- package/dist/services/StatusBarServiceProxy.test.js +68 -70
- package/dist/services/StatusBarServiceProxy.test.js.map +1 -1
- package/dist/services/StorageServiceProxy.js +2 -6
- package/dist/services/StorageServiceProxy.js.map +1 -1
- package/dist/services/StorageServiceProxy.test.js +31 -33
- package/dist/services/StorageServiceProxy.test.js.map +1 -1
- package/dist/services/SystemEventsServiceProxy.js +2 -6
- package/dist/services/SystemEventsServiceProxy.js.map +1 -1
- package/dist/services/SystemEventsServiceProxy.test.js +50 -52
- package/dist/services/SystemEventsServiceProxy.test.js.map +1 -1
- package/dist/services/TimerServiceProxy.js +2 -6
- package/dist/services/TimerServiceProxy.js.map +1 -1
- package/dist/services/TimerServiceProxy.test.js +33 -35
- package/dist/services/TimerServiceProxy.test.js.map +1 -1
- package/dist/services/WindowManagementService.js +2 -6
- package/dist/services/WindowManagementService.js.map +1 -1
- package/dist/services/WindowManagementService.test.js +23 -25
- package/dist/services/WindowManagementService.test.js.map +1 -1
- package/dist/services/index.js +36 -76
- package/dist/services/index.js.map +1 -1
- package/dist/services/statusBarValidation.js +7 -14
- package/dist/services/statusBarValidation.js.map +1 -1
- package/dist/types/ActionType.js +3 -6
- package/dist/types/ActionType.js.map +1 -1
- package/dist/types/ApplicationType.js +1 -2
- package/dist/types/ClipboardType.js +2 -5
- package/dist/types/ClipboardType.js.map +1 -1
- package/dist/types/CommandType.js +1 -2
- package/dist/types/ExtensionType.d.ts +40 -5
- package/dist/types/ExtensionType.d.ts.map +1 -1
- package/dist/types/ExtensionType.js +1 -2
- package/dist/types/NetworkType.js +1 -2
- package/dist/types/NotificationType.js +1 -2
- package/dist/types/SyncType.js +1 -2
- package/dist/types/index.js +2 -18
- package/dist/types/index.js.map +1 -1
- package/dist/view.d.ts +12 -0
- package/dist/view.d.ts.map +1 -0
- package/dist/view.js +19 -0
- package/dist/view.js.map +1 -0
- package/dist/view.test.d.ts +2 -0
- package/dist/view.test.d.ts.map +1 -0
- package/dist/view.test.js +114 -0
- package/dist/view.test.js.map +1 -0
- package/dist/worker.bundle-size.test.d.ts +2 -0
- package/dist/worker.bundle-size.test.d.ts.map +1 -0
- package/dist/worker.bundle-size.test.js +96 -0
- package/dist/worker.bundle-size.test.js.map +1 -0
- package/dist/worker.d.ts +37 -0
- package/dist/worker.d.ts.map +1 -0
- package/dist/worker.js +122 -0
- package/dist/worker.js.map +1 -0
- package/dist/worker.test.d.ts +2 -0
- package/dist/worker.test.d.ts.map +1 -0
- package/dist/worker.test.js +136 -0
- package/dist/worker.test.js.map +1 -0
- package/package.json +12 -4
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -47
- package/dist/index.js.map +0 -1
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
2
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
3
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -8,56 +7,55 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
7
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
8
|
});
|
|
10
9
|
};
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
vitest_1.vi.mock('../ipc/MessageBroker', () => ({
|
|
10
|
+
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
|
11
|
+
import { AIServiceProxy } from './AIServiceProxy';
|
|
12
|
+
import { messageBroker } from '../ipc/MessageBroker';
|
|
13
|
+
vi.mock('../ipc/MessageBroker', () => ({
|
|
16
14
|
messageBroker: {
|
|
17
|
-
invoke:
|
|
18
|
-
on:
|
|
19
|
-
off:
|
|
15
|
+
invoke: vi.fn(),
|
|
16
|
+
on: vi.fn(),
|
|
17
|
+
off: vi.fn(),
|
|
20
18
|
},
|
|
21
19
|
}));
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
20
|
+
describe('AIServiceProxy', () => {
|
|
21
|
+
beforeEach(() => {
|
|
22
|
+
vi.clearAllMocks();
|
|
25
23
|
});
|
|
26
24
|
function fireStreamMessage(data) {
|
|
27
25
|
window.dispatchEvent(new MessageEvent('message', { data }));
|
|
28
26
|
}
|
|
29
27
|
function makeProxy() {
|
|
30
|
-
const mockInvoke =
|
|
31
|
-
Object.assign(
|
|
28
|
+
const mockInvoke = vi.fn().mockResolvedValue({ streaming: true });
|
|
29
|
+
Object.assign(messageBroker, {
|
|
32
30
|
invoke: mockInvoke,
|
|
33
|
-
on:
|
|
34
|
-
off:
|
|
31
|
+
on: vi.fn(),
|
|
32
|
+
off: vi.fn(),
|
|
35
33
|
});
|
|
36
|
-
const proxy = new
|
|
34
|
+
const proxy = new AIServiceProxy();
|
|
37
35
|
proxy.setExtensionId('ext-1');
|
|
38
36
|
return { proxy, mockInvoke };
|
|
39
37
|
}
|
|
40
|
-
|
|
41
|
-
|
|
38
|
+
describe('broker.invoke type string', () => {
|
|
39
|
+
it('stream → "ai:streamChat"', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
42
40
|
const { proxy, mockInvoke } = makeProxy();
|
|
43
|
-
proxy.stream({ messages: [{ role: 'user', content: 'hi' }] }, { onToken:
|
|
44
|
-
yield
|
|
41
|
+
proxy.stream({ messages: [{ role: 'user', content: 'hi' }] }, { onToken: vi.fn(), onDone: vi.fn(), onError: vi.fn() });
|
|
42
|
+
yield vi.waitFor(() => expect(mockInvoke).toHaveBeenCalled());
|
|
45
43
|
const call = mockInvoke.mock.calls.find(c => c[0] === 'ai:streamChat');
|
|
46
|
-
|
|
44
|
+
expect(call).toBeDefined();
|
|
47
45
|
}));
|
|
48
46
|
});
|
|
49
|
-
|
|
47
|
+
it('should start stream and receive tokens', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
50
48
|
const { proxy, mockInvoke } = makeProxy();
|
|
51
49
|
let capturedId;
|
|
52
50
|
mockInvoke.mockImplementation((_cmd, payload) => {
|
|
53
51
|
capturedId = payload.streamId;
|
|
54
52
|
return Promise.resolve({ streaming: true });
|
|
55
53
|
});
|
|
56
|
-
const onToken =
|
|
57
|
-
const onDone =
|
|
58
|
-
const onError =
|
|
54
|
+
const onToken = vi.fn();
|
|
55
|
+
const onDone = vi.fn();
|
|
56
|
+
const onError = vi.fn();
|
|
59
57
|
proxy.stream({ messages: [{ role: 'user', content: 'hi' }] }, { onToken, onDone, onError });
|
|
60
|
-
yield
|
|
58
|
+
yield vi.waitFor(() => capturedId !== undefined);
|
|
61
59
|
fireStreamMessage({
|
|
62
60
|
type: 'asyar:stream',
|
|
63
61
|
streamId: capturedId,
|
|
@@ -70,97 +68,97 @@ vitest_1.vi.mock('../ipc/MessageBroker', () => ({
|
|
|
70
68
|
phase: 'chunk',
|
|
71
69
|
data: { token: 'world' },
|
|
72
70
|
});
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
71
|
+
expect(onToken).toHaveBeenCalledWith('hello ');
|
|
72
|
+
expect(onToken).toHaveBeenCalledWith('world');
|
|
73
|
+
expect(onDone).not.toHaveBeenCalled();
|
|
74
|
+
expect(onError).not.toHaveBeenCalled();
|
|
77
75
|
}));
|
|
78
|
-
|
|
76
|
+
it('should handle done phase', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
79
77
|
const { proxy, mockInvoke } = makeProxy();
|
|
80
78
|
let capturedId;
|
|
81
79
|
mockInvoke.mockImplementation((_cmd, payload) => {
|
|
82
80
|
capturedId = payload.streamId;
|
|
83
81
|
return Promise.resolve({ streaming: true });
|
|
84
82
|
});
|
|
85
|
-
const onDone =
|
|
86
|
-
proxy.stream({ messages: [] }, { onToken:
|
|
87
|
-
yield
|
|
83
|
+
const onDone = vi.fn();
|
|
84
|
+
proxy.stream({ messages: [] }, { onToken: vi.fn(), onDone, onError: vi.fn() });
|
|
85
|
+
yield vi.waitFor(() => capturedId !== undefined);
|
|
88
86
|
fireStreamMessage({
|
|
89
87
|
type: 'asyar:stream',
|
|
90
88
|
streamId: capturedId,
|
|
91
89
|
phase: 'done',
|
|
92
90
|
});
|
|
93
|
-
|
|
91
|
+
expect(onDone).toHaveBeenCalled();
|
|
94
92
|
}));
|
|
95
|
-
|
|
93
|
+
it('should handle error phase from stream', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
96
94
|
const { proxy, mockInvoke } = makeProxy();
|
|
97
95
|
let capturedId;
|
|
98
96
|
mockInvoke.mockImplementation((_cmd, payload) => {
|
|
99
97
|
capturedId = payload.streamId;
|
|
100
98
|
return Promise.resolve({ streaming: true });
|
|
101
99
|
});
|
|
102
|
-
const onError =
|
|
103
|
-
proxy.stream({ messages: [] }, { onToken:
|
|
104
|
-
yield
|
|
100
|
+
const onError = vi.fn();
|
|
101
|
+
proxy.stream({ messages: [] }, { onToken: vi.fn(), onDone: vi.fn(), onError });
|
|
102
|
+
yield vi.waitFor(() => capturedId !== undefined);
|
|
105
103
|
fireStreamMessage({
|
|
106
104
|
type: 'asyar:stream',
|
|
107
105
|
streamId: capturedId,
|
|
108
106
|
phase: 'error',
|
|
109
107
|
data: { error: { code: 'provider_error', message: 'Rate limited' } },
|
|
110
108
|
});
|
|
111
|
-
|
|
109
|
+
expect(onError).toHaveBeenCalledWith({
|
|
112
110
|
code: 'provider_error',
|
|
113
111
|
message: 'Rate limited',
|
|
114
112
|
});
|
|
115
113
|
}));
|
|
116
|
-
|
|
114
|
+
it('should parse and validate error codes from invoke rejection', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
117
115
|
const { proxy, mockInvoke } = makeProxy();
|
|
118
116
|
mockInvoke.mockRejectedValue(new Error('ai_not_configured: No provider set'));
|
|
119
|
-
const onError =
|
|
120
|
-
proxy.stream({ messages: [] }, { onToken:
|
|
121
|
-
yield
|
|
122
|
-
|
|
117
|
+
const onError = vi.fn();
|
|
118
|
+
proxy.stream({ messages: [] }, { onToken: vi.fn(), onDone: vi.fn(), onError });
|
|
119
|
+
yield vi.waitFor(() => onError.mock.calls.length > 0);
|
|
120
|
+
expect(onError).toHaveBeenCalledWith({
|
|
123
121
|
code: 'ai_not_configured',
|
|
124
122
|
message: 'No provider set',
|
|
125
123
|
});
|
|
126
124
|
}));
|
|
127
|
-
|
|
125
|
+
it('should fallback to internal_error for unknown codes in invoke rejection', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
128
126
|
const { proxy, mockInvoke } = makeProxy();
|
|
129
127
|
mockInvoke.mockRejectedValue(new Error('unknown_thing: Something happened'));
|
|
130
|
-
const onError =
|
|
131
|
-
proxy.stream({ messages: [] }, { onToken:
|
|
132
|
-
yield
|
|
133
|
-
|
|
128
|
+
const onError = vi.fn();
|
|
129
|
+
proxy.stream({ messages: [] }, { onToken: vi.fn(), onDone: vi.fn(), onError });
|
|
130
|
+
yield vi.waitFor(() => onError.mock.calls.length > 0);
|
|
131
|
+
expect(onError).toHaveBeenCalledWith({
|
|
134
132
|
code: 'internal_error',
|
|
135
133
|
message: 'Something happened',
|
|
136
134
|
});
|
|
137
135
|
}));
|
|
138
|
-
|
|
136
|
+
it('should fallback to internal_error for malformed errors', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
139
137
|
const { proxy, mockInvoke } = makeProxy();
|
|
140
138
|
mockInvoke.mockRejectedValue(new Error('just a message without code'));
|
|
141
|
-
const onError =
|
|
142
|
-
proxy.stream({ messages: [] }, { onToken:
|
|
143
|
-
yield
|
|
144
|
-
|
|
139
|
+
const onError = vi.fn();
|
|
140
|
+
proxy.stream({ messages: [] }, { onToken: vi.fn(), onDone: vi.fn(), onError });
|
|
141
|
+
yield vi.waitFor(() => onError.mock.calls.length > 0);
|
|
142
|
+
expect(onError).toHaveBeenCalledWith({
|
|
145
143
|
code: 'internal_error',
|
|
146
144
|
message: 'just a message without code',
|
|
147
145
|
});
|
|
148
146
|
}));
|
|
149
|
-
|
|
147
|
+
it('should clean up listener and stop processing after settle', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
150
148
|
const { proxy, mockInvoke } = makeProxy();
|
|
151
149
|
let capturedId;
|
|
152
150
|
mockInvoke.mockImplementation((_cmd, payload) => {
|
|
153
151
|
capturedId = payload.streamId;
|
|
154
152
|
return Promise.resolve({ streaming: true });
|
|
155
153
|
});
|
|
156
|
-
const onToken =
|
|
157
|
-
proxy.stream({ messages: [] }, { onToken, onDone:
|
|
158
|
-
yield
|
|
154
|
+
const onToken = vi.fn();
|
|
155
|
+
proxy.stream({ messages: [] }, { onToken, onDone: vi.fn(), onError: vi.fn() });
|
|
156
|
+
yield vi.waitFor(() => capturedId !== undefined);
|
|
159
157
|
fireStreamMessage({ type: 'asyar:stream', streamId: capturedId, phase: 'done' });
|
|
160
158
|
fireStreamMessage({ type: 'asyar:stream', streamId: capturedId, phase: 'chunk', data: { token: 'after' } });
|
|
161
|
-
|
|
159
|
+
expect(onToken).not.toHaveBeenCalled();
|
|
162
160
|
}));
|
|
163
|
-
|
|
161
|
+
it('should support aborting', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
164
162
|
const { proxy, mockInvoke } = makeProxy();
|
|
165
163
|
let capturedId;
|
|
166
164
|
mockInvoke.mockImplementation((_cmd, payload) => {
|
|
@@ -168,32 +166,32 @@ vitest_1.vi.mock('../ipc/MessageBroker', () => ({
|
|
|
168
166
|
return Promise.resolve({ streaming: true });
|
|
169
167
|
});
|
|
170
168
|
// Mock window.parent.postMessage
|
|
171
|
-
const spy =
|
|
172
|
-
const handle = proxy.stream({ messages: [] }, { onToken:
|
|
173
|
-
yield
|
|
169
|
+
const spy = vi.spyOn(window.parent, 'postMessage');
|
|
170
|
+
const handle = proxy.stream({ messages: [] }, { onToken: vi.fn(), onDone: vi.fn(), onError: vi.fn() });
|
|
171
|
+
yield vi.waitFor(() => capturedId !== undefined);
|
|
174
172
|
handle.abort();
|
|
175
|
-
|
|
173
|
+
expect(spy).toHaveBeenCalledWith({
|
|
176
174
|
type: 'asyar:stream:abort',
|
|
177
175
|
streamId: capturedId,
|
|
178
176
|
}, '*');
|
|
179
177
|
}));
|
|
180
|
-
|
|
178
|
+
it('should ignore messages with wrong streamId', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
181
179
|
const { proxy, mockInvoke } = makeProxy();
|
|
182
180
|
let capturedId;
|
|
183
181
|
mockInvoke.mockImplementation((_cmd, payload) => {
|
|
184
182
|
capturedId = payload.streamId;
|
|
185
183
|
return Promise.resolve({ streaming: true });
|
|
186
184
|
});
|
|
187
|
-
const onToken =
|
|
188
|
-
proxy.stream({ messages: [] }, { onToken, onDone:
|
|
189
|
-
yield
|
|
185
|
+
const onToken = vi.fn();
|
|
186
|
+
proxy.stream({ messages: [] }, { onToken, onDone: vi.fn(), onError: vi.fn() });
|
|
187
|
+
yield vi.waitFor(() => capturedId !== undefined);
|
|
190
188
|
fireStreamMessage({
|
|
191
189
|
type: 'asyar:stream',
|
|
192
190
|
streamId: 'wrong-id',
|
|
193
191
|
phase: 'chunk',
|
|
194
192
|
data: { token: 'ignored' },
|
|
195
193
|
});
|
|
196
|
-
|
|
194
|
+
expect(onToken).not.toHaveBeenCalled();
|
|
197
195
|
}));
|
|
198
196
|
});
|
|
199
197
|
//# sourceMappingURL=AIServiceProxy.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AIServiceProxy.test.js","sourceRoot":"","sources":["../../src/services/AIServiceProxy.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AIServiceProxy.test.js","sourceRoot":"","sources":["../../src/services/AIServiceProxy.test.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAa,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGrD,EAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE,CAAC,CAAC;IACrC,aAAa,EAAE;QACX,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE;QACf,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;QACX,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;KACb;CACJ,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,aAAa,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,SAAS,iBAAiB,CAAC,IAAY;QACrC,MAAM,CAAC,aAAa,CAAC,IAAI,YAAY,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,SAAS,SAAS;QAChB,MAAM,UAAU,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAClE,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE;YAC3B,MAAM,EAAE,UAAU;YAClB,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;YACX,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;SACb,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,cAAc,EAAE,CAAC;QACnC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC9B,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IAC/B,CAAC;IAED,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACzC,EAAE,CAAC,0BAA0B,EAAE,GAAS,EAAE;YACxC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,CAAC;YAC1C,KAAK,CAAC,MAAM,CACV,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,EAC/C,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CACxD,CAAC;YACF,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,gBAAgB,EAAE,CAAC,CAAC;YAC9D,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,eAAe,CAAC,CAAC;YACvE,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7B,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAS,EAAE;QACtD,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,CAAC;QAC1C,IAAI,UAA8B,CAAC;QACnC,UAAU,CAAC,kBAAkB,CAAC,CAAC,IAAY,EAAE,OAA6B,EAAE,EAAE;YAC5E,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC;YAC9B,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAExB,KAAK,CAAC,MAAM,CACV,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,EAC/C,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAC7B,CAAC;QAEF,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC;QAEjD,iBAAiB,CAAC;YAChB,IAAI,EAAE,cAAc;YACpB,QAAQ,EAAE,UAAU;YACpB,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE;SAC1B,CAAC,CAAC;QACH,iBAAiB,CAAC;YAChB,IAAI,EAAE,cAAc;YACpB,QAAQ,EAAE,UAAU;YACpB,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;SACzB,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACtC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACzC,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAS,EAAE;QACxC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,CAAC;QAC1C,IAAI,UAA8B,CAAC;QACnC,UAAU,CAAC,kBAAkB,CAAC,CAAC,IAAY,EAAE,OAA6B,EAAE,EAAE;YAC5E,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC;YAC9B,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACvB,KAAK,CAAC,MAAM,CACV,EAAE,QAAQ,EAAE,EAAE,EAAE,EAChB,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAC/C,CAAC;QAEF,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC;QAEjD,iBAAiB,CAAC;YAChB,IAAI,EAAE,cAAc;YACpB,QAAQ,EAAE,UAAU;YACpB,KAAK,EAAE,MAAM;SACd,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACpC,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAS,EAAE;QACrD,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,CAAC;QAC1C,IAAI,UAA8B,CAAC;QACnC,UAAU,CAAC,kBAAkB,CAAC,CAAC,IAAY,EAAE,OAA6B,EAAE,EAAE;YAC5E,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC;YAC9B,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACxB,KAAK,CAAC,MAAM,CACV,EAAE,QAAQ,EAAE,EAAE,EAAE,EAChB,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAC/C,CAAC;QAEF,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC;QAEjD,iBAAiB,CAAC;YAChB,IAAI,EAAE,cAAc;YACpB,QAAQ,EAAE,UAAU;YACpB,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE;SACrE,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC;YACnC,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,cAAc;SACxB,CAAC,CAAC;IACL,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,GAAS,EAAE;QAC3E,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,CAAC;QAC1C,UAAU,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC,CAAC;QAE9E,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACxB,KAAK,CAAC,MAAM,CACV,EAAE,QAAQ,EAAE,EAAE,EAAE,EAChB,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAC/C,CAAC;QAEF,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAEtD,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC;YACnC,IAAI,EAAE,mBAAmB;YACzB,OAAO,EAAE,iBAAiB;SAC3B,CAAC,CAAC;IACL,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,GAAS,EAAE;QACvF,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,CAAC;QAC1C,UAAU,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC,CAAC;QAE7E,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACxB,KAAK,CAAC,MAAM,CACV,EAAE,QAAQ,EAAE,EAAE,EAAE,EAChB,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAC/C,CAAC;QAEF,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAEtD,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC;YACnC,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,oBAAoB;SAC9B,CAAC,CAAC;IACL,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,GAAS,EAAE;QACtE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,CAAC;QAC1C,UAAU,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;QAEvE,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACxB,KAAK,CAAC,MAAM,CACV,EAAE,QAAQ,EAAE,EAAE,EAAE,EAChB,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAC/C,CAAC;QAEF,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAEtD,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC;YACnC,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,6BAA6B;SACvC,CAAC,CAAC;IACL,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAS,EAAE;QACzE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,CAAC;QAC1C,IAAI,UAA8B,CAAC;QACnC,UAAU,CAAC,kBAAkB,CAAC,CAAC,IAAY,EAAE,OAA6B,EAAE,EAAE;YAC5E,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC;YAC9B,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACxB,KAAK,CAAC,MAAM,CACV,EAAE,QAAQ,EAAE,EAAE,EAAE,EAChB,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAC/C,CAAC;QAEF,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC;QAEjD,iBAAiB,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACjF,iBAAiB,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QAE5G,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACzC,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,GAAS,EAAE;QACvC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,CAAC;QAC1C,IAAI,UAA8B,CAAC;QACnC,UAAU,CAAC,kBAAkB,CAAC,CAAC,IAAY,EAAE,OAA6B,EAAE,EAAE;YAC5E,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC;YAC9B,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,iCAAiC;QACjC,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAEnD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CACzB,EAAE,QAAQ,EAAE,EAAE,EAAE,EAChB,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CACxD,CAAC;QAEF,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC;QAEjD,MAAM,CAAC,KAAK,EAAE,CAAC;QAEf,MAAM,CAAC,GAAG,CAAC,CAAC,oBAAoB,CAC9B;YACE,IAAI,EAAE,oBAAoB;YAC1B,QAAQ,EAAE,UAAU;SACrB,EACD,GAAG,CACJ,CAAC;IACJ,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAS,EAAE;QAC1D,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,CAAC;QAC1C,IAAI,UAA8B,CAAC;QACnC,UAAU,CAAC,kBAAkB,CAAC,CAAC,IAAY,EAAE,OAA6B,EAAE,EAAE;YAC5E,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC;YAC9B,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACxB,KAAK,CAAC,MAAM,CACV,EAAE,QAAQ,EAAE,EAAE,EAAE,EAChB,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAC/C,CAAC;QAEF,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC;QAEjD,iBAAiB,CAAC;YAChB,IAAI,EAAE,cAAc;YACpB,QAAQ,EAAE,UAAU;YACpB,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;SAC3B,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACzC,CAAC,CAAA,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionServiceProxy.d.ts","sourceRoot":"","sources":["../../src/services/ActionServiceProxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,qBAAa,kBAAmB,SAAQ,gBAAiB,YAAW,cAAc;IAChF,OAAO,CAAC,cAAc,CAAuC;IAE7D,cAAc,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI;IAM7C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKxC,UAAU,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,eAAe,EAAE;IAStD,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9C,UAAU,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAKvE,UAAU,IAAI,aAAa;IAK3B,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"ActionServiceProxy.d.ts","sourceRoot":"","sources":["../../src/services/ActionServiceProxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,qBAAa,kBAAmB,SAAQ,gBAAiB,YAAW,cAAc;IAChF,OAAO,CAAC,cAAc,CAAuC;IAE7D,cAAc,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI;IAM7C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKxC,UAAU,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,eAAe,EAAE;IAStD,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9C,UAAU,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAKvE,UAAU,IAAI,aAAa;IAK3B,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI;CAUnF"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
2
|
var t = {};
|
|
4
3
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
@@ -10,28 +9,26 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
10
9
|
}
|
|
11
10
|
return t;
|
|
12
11
|
};
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
const ExtensionBridge_1 = require("../ExtensionBridge");
|
|
18
|
-
class ActionServiceProxy extends BaseServiceProxy_1.BaseServiceProxy {
|
|
12
|
+
import { ActionContext } from "../types";
|
|
13
|
+
import { BaseServiceProxy } from "./BaseServiceProxy";
|
|
14
|
+
import { extensionBridge } from "../ExtensionBridge";
|
|
15
|
+
export class ActionServiceProxy extends BaseServiceProxy {
|
|
19
16
|
constructor() {
|
|
20
17
|
super(...arguments);
|
|
21
|
-
this.currentContext =
|
|
18
|
+
this.currentContext = ActionContext.GLOBAL;
|
|
22
19
|
}
|
|
23
20
|
registerAction(action) {
|
|
24
|
-
|
|
21
|
+
extensionBridge.registerAction(action.extensionId, action);
|
|
25
22
|
const { execute } = action, actionData = __rest(action, ["execute"]);
|
|
26
23
|
this.broker.invoke('actions:registerAction', { action: actionData }).catch(err => console.warn('[ActionServiceProxy] registerAction failed:', err));
|
|
27
24
|
}
|
|
28
25
|
unregisterAction(actionId) {
|
|
29
|
-
|
|
26
|
+
extensionBridge.unregisterAction(actionId);
|
|
30
27
|
this.broker.invoke('actions:unregisterAction', { actionId }).catch(err => console.warn('[ActionServiceProxy] unregisterAction failed:', err));
|
|
31
28
|
}
|
|
32
29
|
getActions(context) {
|
|
33
30
|
console.warn('getActions called synchronously in proxy.');
|
|
34
|
-
const allActions =
|
|
31
|
+
const allActions = extensionBridge.getActions();
|
|
35
32
|
if (context) {
|
|
36
33
|
return allActions.filter(a => a.context === context);
|
|
37
34
|
}
|
|
@@ -49,8 +46,12 @@ class ActionServiceProxy extends BaseServiceProxy_1.BaseServiceProxy {
|
|
|
49
46
|
return this.currentContext;
|
|
50
47
|
}
|
|
51
48
|
registerActionHandler(actionId, handler) {
|
|
52
|
-
|
|
49
|
+
extensionBridge.registerActionHandler(this.extensionId, actionId, handler);
|
|
50
|
+
// Round-trip the registration so the launcher learns which iframe role
|
|
51
|
+
// (view vs worker) owns the handler. The role itself is derived host-side
|
|
52
|
+
// from the calling iframe's [data-role] attribute — never trusted from
|
|
53
|
+
// the payload. Used to dispatch asyar:action:execute to the correct iframe.
|
|
54
|
+
this.broker.invoke('actions:registerActionHandler', { actionId }).catch((err) => console.warn('[ActionServiceProxy] registerActionHandler round-trip failed:', err));
|
|
53
55
|
}
|
|
54
56
|
}
|
|
55
|
-
exports.ActionServiceProxy = ActionServiceProxy;
|
|
56
57
|
//# sourceMappingURL=ActionServiceProxy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionServiceProxy.js","sourceRoot":"","sources":["../../src/services/ActionServiceProxy.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ActionServiceProxy.js","sourceRoot":"","sources":["../../src/services/ActionServiceProxy.ts"],"names":[],"mappings":";;;;;;;;;;;AACA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,OAAO,kBAAmB,SAAQ,gBAAgB;IAAxD;;QACU,mBAAc,GAAkB,aAAa,CAAC,MAAM,CAAC;IA8C/D,CAAC;IA5CC,cAAc,CAAC,MAAuB;QACpC,eAAe,CAAC,cAAc,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC3D,MAAM,EAAE,OAAO,KAAoB,MAAM,EAArB,UAAU,UAAK,MAAM,EAAnC,WAA0B,CAAS,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,wBAAwB,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,6CAA6C,EAAE,GAAG,CAAC,CAAC,CAAC;IACtJ,CAAC;IAED,gBAAgB,CAAC,QAAgB;QAC/B,eAAe,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,0BAA0B,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,+CAA+C,EAAE,GAAG,CAAC,CAAC,CAAC;IAChJ,CAAC;IAED,UAAU,CAAC,OAAuB;QAChC,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;QAC1D,MAAM,UAAU,GAAG,eAAe,CAAC,UAAU,EAAE,CAAC;QAChD,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,aAAa,CAAC,QAAgB;QAC5B,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAO,uBAAuB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,UAAU,CAAC,OAAsB,EAAE,IAA6B;QAC9D,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,oBAAoB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,yCAAyC,EAAE,GAAG,CAAC,CAAC,CAAC;IACzI,CAAC;IAED,UAAU;QACR,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,qBAAqB,CAAC,QAAgB,EAAE,OAAmC;QACzE,eAAe,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC3E,uEAAuE;QACvE,0EAA0E;QAC1E,uEAAuE;QACvE,4EAA4E;QAC5E,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,+BAA+B,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAC9E,OAAO,CAAC,IAAI,CAAC,+DAA+D,EAAE,GAAG,CAAC,CACnF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
2
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
3
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -8,49 +7,55 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
7
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
8
|
});
|
|
10
9
|
};
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
messageBroker: { invoke: vitest_1.vi.fn().mockResolvedValue(undefined), on: vitest_1.vi.fn(), off: vitest_1.vi.fn() },
|
|
10
|
+
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
|
11
|
+
import { ActionServiceProxy } from './ActionServiceProxy';
|
|
12
|
+
import { messageBroker } from '../ipc/MessageBroker';
|
|
13
|
+
import { ActionContext } from '../types';
|
|
14
|
+
vi.mock('../ipc/MessageBroker', () => ({
|
|
15
|
+
messageBroker: { invoke: vi.fn().mockResolvedValue(undefined), on: vi.fn(), off: vi.fn() },
|
|
18
16
|
}));
|
|
19
17
|
function makeProxy() {
|
|
20
|
-
const mockInvoke =
|
|
21
|
-
Object.assign(
|
|
22
|
-
invoke: mockInvoke, on:
|
|
18
|
+
const mockInvoke = vi.fn().mockResolvedValue(undefined);
|
|
19
|
+
Object.assign(messageBroker, {
|
|
20
|
+
invoke: mockInvoke, on: vi.fn(), off: vi.fn(),
|
|
23
21
|
});
|
|
24
|
-
const proxy = new
|
|
22
|
+
const proxy = new ActionServiceProxy();
|
|
25
23
|
proxy.setExtensionId('ext.test');
|
|
26
24
|
return { proxy, mockInvoke };
|
|
27
25
|
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
26
|
+
describe('ActionServiceProxy', () => {
|
|
27
|
+
beforeEach(() => vi.clearAllMocks());
|
|
28
|
+
it('registerAction → "actions:registerAction"', () => {
|
|
31
29
|
const { proxy, mockInvoke } = makeProxy();
|
|
32
30
|
proxy.registerAction({ id: 'a1', title: 'A', extensionId: 'ext.test' });
|
|
33
31
|
const call = mockInvoke.mock.calls.find(c => c[0] === 'actions:registerAction');
|
|
34
|
-
|
|
32
|
+
expect(call).toBeDefined();
|
|
35
33
|
});
|
|
36
|
-
|
|
34
|
+
it('unregisterAction → "actions:unregisterAction"', () => {
|
|
37
35
|
const { proxy, mockInvoke } = makeProxy();
|
|
38
36
|
proxy.unregisterAction('a1');
|
|
39
37
|
const call = mockInvoke.mock.calls.find(c => c[0] === 'actions:unregisterAction');
|
|
40
|
-
|
|
38
|
+
expect(call).toBeDefined();
|
|
41
39
|
});
|
|
42
|
-
|
|
40
|
+
it('executeAction → "actions:executeAction"', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
43
41
|
const { proxy, mockInvoke } = makeProxy();
|
|
44
42
|
mockInvoke.mockResolvedValue(undefined);
|
|
45
43
|
yield proxy.executeAction('a1');
|
|
46
44
|
const call = mockInvoke.mock.calls.find(c => c[0] === 'actions:executeAction');
|
|
47
|
-
|
|
45
|
+
expect(call).toBeDefined();
|
|
48
46
|
}));
|
|
49
|
-
|
|
47
|
+
it('setContext → "actions:setContext"', () => {
|
|
50
48
|
const { proxy, mockInvoke } = makeProxy();
|
|
51
|
-
proxy.setContext(
|
|
49
|
+
proxy.setContext(ActionContext.GLOBAL, { commandId: 'cmd1' });
|
|
52
50
|
const call = mockInvoke.mock.calls.find(c => c[0] === 'actions:setContext');
|
|
53
|
-
|
|
51
|
+
expect(call).toBeDefined();
|
|
52
|
+
});
|
|
53
|
+
it('registerActionHandler → "actions:registerActionHandler" (so the launcher learns the registering iframe\'s role)', () => {
|
|
54
|
+
const { proxy, mockInvoke } = makeProxy();
|
|
55
|
+
proxy.registerActionHandler('send-notification', () => undefined);
|
|
56
|
+
const call = mockInvoke.mock.calls.find(c => c[0] === 'actions:registerActionHandler');
|
|
57
|
+
expect(call).toBeDefined();
|
|
58
|
+
expect(call === null || call === void 0 ? void 0 : call[1]).toMatchObject({ actionId: 'send-notification' });
|
|
54
59
|
});
|
|
55
60
|
});
|
|
56
61
|
//# sourceMappingURL=ActionServiceProxy.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionServiceProxy.test.js","sourceRoot":"","sources":["../../src/services/ActionServiceProxy.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ActionServiceProxy.test.js","sourceRoot":"","sources":["../../src/services/ActionServiceProxy.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
2
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
3
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -8,9 +7,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
7
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
8
|
});
|
|
10
9
|
};
|
|
11
|
-
|
|
12
|
-
exports.ApplicationServiceProxy = void 0;
|
|
13
|
-
const BaseServiceProxy_1 = require("./BaseServiceProxy");
|
|
10
|
+
import { BaseServiceProxy } from './BaseServiceProxy';
|
|
14
11
|
/**
|
|
15
12
|
* SDK-side proxy for `ApplicationService` + the new push-event surface.
|
|
16
13
|
*
|
|
@@ -34,7 +31,7 @@ const BaseServiceProxy_1 = require("./BaseServiceProxy");
|
|
|
34
31
|
* reuse the in-flight subscription. When the last listener for a kind is
|
|
35
32
|
* disposed, one `appEvents:unsubscribe` RPC fires.
|
|
36
33
|
*/
|
|
37
|
-
class ApplicationServiceProxy extends
|
|
34
|
+
export class ApplicationServiceProxy extends BaseServiceProxy {
|
|
38
35
|
constructor() {
|
|
39
36
|
super(...arguments);
|
|
40
37
|
this.states = new Map();
|
|
@@ -188,5 +185,4 @@ class ApplicationServiceProxy extends BaseServiceProxy_1.BaseServiceProxy {
|
|
|
188
185
|
};
|
|
189
186
|
}
|
|
190
187
|
}
|
|
191
|
-
exports.ApplicationServiceProxy = ApplicationServiceProxy;
|
|
192
188
|
//# sourceMappingURL=ApplicationService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApplicationService.js","sourceRoot":"","sources":["../../src/services/ApplicationService.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ApplicationService.js","sourceRoot":"","sources":["../../src/services/ApplicationService.ts"],"names":[],"mappings":"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"}
|