@optimizely/ocp-local-env 1.0.0-beta.4
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 +165 -0
- package/dist/package.json +104 -0
- package/dist/public/bundle.da978bb5437cd82e6d37.js +3 -0
- package/dist/public/bundle.da978bb5437cd82e6d37.js.LICENSE.txt +49 -0
- package/dist/public/bundle.da978bb5437cd82e6d37.js.map +1 -0
- package/dist/public/index.html +1 -0
- package/dist/src/cli.d.ts +2 -0
- package/dist/src/cli.js +88 -0
- package/dist/src/cli.js.map +1 -0
- package/dist/src/executor/FunctionExecutor.d.ts +56 -0
- package/dist/src/executor/FunctionExecutor.js +175 -0
- package/dist/src/executor/FunctionExecutor.js.map +1 -0
- package/dist/src/executor/JobExecutor.d.ts +60 -0
- package/dist/src/executor/JobExecutor.js +203 -0
- package/dist/src/executor/JobExecutor.js.map +1 -0
- package/dist/src/executor/LifecycleExecutor.d.ts +45 -0
- package/dist/src/executor/LifecycleExecutor.js +153 -0
- package/dist/src/executor/LifecycleExecutor.js.map +1 -0
- package/dist/src/executor/watcher.d.ts +63 -0
- package/dist/src/executor/watcher.js +213 -0
- package/dist/src/executor/watcher.js.map +1 -0
- package/dist/src/functions/hello.d.ts +4 -0
- package/dist/src/functions/hello.js +8 -0
- package/dist/src/functions/hello.js.map +1 -0
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.js +9 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/jobs/dailyJob.d.ts +4 -0
- package/dist/src/jobs/dailyJob.js +8 -0
- package/dist/src/jobs/dailyJob.js.map +1 -0
- package/dist/src/local_engine/LocalNotifier.d.ts +10 -0
- package/dist/src/local_engine/LocalNotifier.js +26 -0
- package/dist/src/local_engine/LocalNotifier.js.map +1 -0
- package/dist/src/local_engine/local-engine-child-base.d.ts +79 -0
- package/dist/src/local_engine/local-engine-child-base.js +304 -0
- package/dist/src/local_engine/local-engine-child-base.js.map +1 -0
- package/dist/src/local_engine/local-engine-client.d.ts +80 -0
- package/dist/src/local_engine/local-engine-client.js +333 -0
- package/dist/src/local_engine/local-engine-client.js.map +1 -0
- package/dist/src/local_engine/local-engine-types.d.ts +132 -0
- package/dist/src/local_engine/local-engine-types.js +6 -0
- package/dist/src/local_engine/local-engine-types.js.map +1 -0
- package/dist/src/local_engine/local-engine-unified.d.ts +40 -0
- package/dist/src/local_engine/local-engine-unified.js +406 -0
- package/dist/src/local_engine/local-engine-unified.js.map +1 -0
- package/dist/src/local_engine/local-engine-utils.d.ts +70 -0
- package/dist/src/local_engine/local-engine-utils.js +192 -0
- package/dist/src/local_engine/local-engine-utils.js.map +1 -0
- package/dist/src/local_engine/localSDKConfig.d.ts +30 -0
- package/dist/src/local_engine/localSDKConfig.js +392 -0
- package/dist/src/local_engine/localSDKConfig.js.map +1 -0
- package/dist/src/local_engine/storage/LocalConfigStore.d.ts +56 -0
- package/dist/src/local_engine/storage/LocalConfigStore.js +129 -0
- package/dist/src/local_engine/storage/LocalConfigStore.js.map +1 -0
- package/dist/src/local_engine/storage/LocalJobStore.d.ts +110 -0
- package/dist/src/local_engine/storage/LocalJobStore.js +239 -0
- package/dist/src/local_engine/storage/LocalJobStore.js.map +1 -0
- package/dist/src/local_engine/storage/LocalKVStore.d.ts +105 -0
- package/dist/src/local_engine/storage/LocalKVStore.js +1002 -0
- package/dist/src/local_engine/storage/LocalKVStore.js.map +1 -0
- package/dist/src/local_engine/storage/LocalNotificationStore.d.ts +27 -0
- package/dist/src/local_engine/storage/LocalNotificationStore.js +125 -0
- package/dist/src/local_engine/storage/LocalNotificationStore.js.map +1 -0
- package/dist/src/local_engine/storage/LocalSecretsStore.d.ts +114 -0
- package/dist/src/local_engine/storage/LocalSecretsStore.js +319 -0
- package/dist/src/local_engine/storage/LocalSecretsStore.js.map +1 -0
- package/dist/src/local_engine/storage/LocalSettingsStore.d.ts +161 -0
- package/dist/src/local_engine/storage/LocalSettingsStore.js +417 -0
- package/dist/src/local_engine/storage/LocalSettingsStore.js.map +1 -0
- package/dist/src/local_engine/storage/NumberSet.d.ts +21 -0
- package/dist/src/local_engine/storage/NumberSet.js +32 -0
- package/dist/src/local_engine/storage/NumberSet.js.map +1 -0
- package/dist/src/local_engine/storage/StringSet.d.ts +21 -0
- package/dist/src/local_engine/storage/StringSet.js +32 -0
- package/dist/src/local_engine/storage/StringSet.js.map +1 -0
- package/dist/src/local_engine/types.d.ts +52 -0
- package/dist/src/local_engine/types.js +6 -0
- package/dist/src/local_engine/types.js.map +1 -0
- package/dist/src/local_engine/utils.d.ts +31 -0
- package/dist/src/local_engine/utils.js +126 -0
- package/dist/src/local_engine/utils.js.map +1 -0
- package/dist/src/logging/LogManager.d.ts +89 -0
- package/dist/src/logging/LogManager.js +237 -0
- package/dist/src/logging/LogManager.js.map +1 -0
- package/dist/src/server/api/functions.d.ts +7 -0
- package/dist/src/server/api/functions.js +80 -0
- package/dist/src/server/api/functions.js.map +1 -0
- package/dist/src/server/api/jobs.d.ts +8 -0
- package/dist/src/server/api/jobs.js +242 -0
- package/dist/src/server/api/jobs.js.map +1 -0
- package/dist/src/server/api/lifecycle.d.ts +6 -0
- package/dist/src/server/api/lifecycle.js +73 -0
- package/dist/src/server/api/lifecycle.js.map +1 -0
- package/dist/src/server/api/settings.d.ts +6 -0
- package/dist/src/server/api/settings.js +117 -0
- package/dist/src/server/api/settings.js.map +1 -0
- package/dist/src/server/api/stores.d.ts +2 -0
- package/dist/src/server/api/stores.js +341 -0
- package/dist/src/server/api/stores.js.map +1 -0
- package/dist/src/server/api/v1.d.ts +10 -0
- package/dist/src/server/api/v1.js +711 -0
- package/dist/src/server/api/v1.js.map +1 -0
- package/dist/src/server/api.d.ts +8 -0
- package/dist/src/server/api.js +154 -0
- package/dist/src/server/api.js.map +1 -0
- package/dist/src/server/app-discovery.d.ts +5 -0
- package/dist/src/server/app-discovery.js +81 -0
- package/dist/src/server/app-discovery.js.map +1 -0
- package/dist/src/server/config.d.ts +21 -0
- package/dist/src/server/config.js +100 -0
- package/dist/src/server/config.js.map +1 -0
- package/dist/src/server/websocket.d.ts +0 -0
- package/dist/src/server/websocket.js +2 -0
- package/dist/src/server/websocket.js.map +1 -0
- package/dist/src/server.d.ts +2 -0
- package/dist/src/server.js +546 -0
- package/dist/src/server.js.map +1 -0
- package/dist/src/types/app.d.ts +155 -0
- package/dist/src/types/app.js +24 -0
- package/dist/src/types/app.js.map +1 -0
- package/dist/src/types/kvstore.d.ts +320 -0
- package/dist/src/types/kvstore.js +5 -0
- package/dist/src/types/kvstore.js.map +1 -0
- package/dist/src/ui/components/App.d.ts +6 -0
- package/dist/src/ui/components/App.js +255 -0
- package/dist/src/ui/components/App.js.map +1 -0
- package/dist/src/ui/components/FunctionsView.d.ts +6 -0
- package/dist/src/ui/components/FunctionsView.js +217 -0
- package/dist/src/ui/components/FunctionsView.js.map +1 -0
- package/dist/src/ui/components/JobsView.d.ts +6 -0
- package/dist/src/ui/components/JobsView.js +257 -0
- package/dist/src/ui/components/JobsView.js.map +1 -0
- package/dist/src/ui/components/KVStoreViewer.d.ts +11 -0
- package/dist/src/ui/components/KVStoreViewer.js +168 -0
- package/dist/src/ui/components/KVStoreViewer.js.map +1 -0
- package/dist/src/ui/components/NotificationViewer.d.ts +16 -0
- package/dist/src/ui/components/NotificationViewer.js +69 -0
- package/dist/src/ui/components/NotificationViewer.js.map +1 -0
- package/dist/src/ui/components/SecretsStoreViewer.d.ts +11 -0
- package/dist/src/ui/components/SecretsStoreViewer.js +179 -0
- package/dist/src/ui/components/SecretsStoreViewer.js.map +1 -0
- package/dist/src/ui/components/SettingsStoreViewer.d.ts +24 -0
- package/dist/src/ui/components/SettingsStoreViewer.js +132 -0
- package/dist/src/ui/components/SettingsStoreViewer.js.map +1 -0
- package/dist/src/ui/components/StoreViewer.d.ts +16 -0
- package/dist/src/ui/components/StoreViewer.js +86 -0
- package/dist/src/ui/components/StoreViewer.js.map +1 -0
- package/dist/src/ui/components/TabbedConsole.d.ts +15 -0
- package/dist/src/ui/components/TabbedConsole.js +93 -0
- package/dist/src/ui/components/TabbedConsole.js.map +1 -0
- package/dist/src/ui/components/common/DataTree.d.ts +15 -0
- package/dist/src/ui/components/common/DataTree.js +95 -0
- package/dist/src/ui/components/common/DataTree.js.map +1 -0
- package/dist/src/ui/components/common/EyeIcon.d.ts +11 -0
- package/dist/src/ui/components/common/EyeIcon.js +11 -0
- package/dist/src/ui/components/common/EyeIcon.js.map +1 -0
- package/dist/src/ui/index.d.ts +1 -0
- package/dist/src/ui/index.js +20 -0
- package/dist/src/ui/index.js.map +1 -0
- package/package.json +104 -0
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LocalEngineChildBase = void 0;
|
|
4
|
+
const local_engine_utils_1 = require("./local-engine-utils");
|
|
5
|
+
class LocalEngineChildBase {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.initialized = false;
|
|
8
|
+
this.setupMessageHandlers();
|
|
9
|
+
this.setupErrorHandlers();
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Initialize the child process and start listening for messages
|
|
13
|
+
*/
|
|
14
|
+
start() {
|
|
15
|
+
console.log('[IPC Child] Starting IPC child process');
|
|
16
|
+
this.sendReady();
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Set up message handlers for parent communication
|
|
20
|
+
*/
|
|
21
|
+
setupMessageHandlers() {
|
|
22
|
+
if (!process.send) {
|
|
23
|
+
throw new Error('IPC is not available in this process');
|
|
24
|
+
}
|
|
25
|
+
process.on('message', async (message) => {
|
|
26
|
+
try {
|
|
27
|
+
(0, local_engine_utils_1.logIPCMessage)('RECV', message, '[IPC Child]');
|
|
28
|
+
if (!(0, local_engine_utils_1.validateMessage)(message)) {
|
|
29
|
+
this.sendError('invalid_message', 'Invalid message format', new Error('Message validation failed'));
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
await this.handleMessage(message);
|
|
33
|
+
}
|
|
34
|
+
catch (error) {
|
|
35
|
+
console.error('[IPC Child] Error handling message:', error);
|
|
36
|
+
this.sendError('handler_error', 'Failed to handle message', error);
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Set up global error handlers
|
|
42
|
+
*/
|
|
43
|
+
setupErrorHandlers() {
|
|
44
|
+
process.on('uncaughtException', (error) => {
|
|
45
|
+
console.error('[IPC Child] Uncaught exception:', error);
|
|
46
|
+
this.sendError('uncaught_exception', 'Uncaught exception in child process', error);
|
|
47
|
+
process.exit(1);
|
|
48
|
+
});
|
|
49
|
+
process.on('unhandledRejection', (reason, promise) => {
|
|
50
|
+
console.error('[IPC Child] Unhandled rejection at:', promise, 'reason:', reason);
|
|
51
|
+
this.sendError('unhandled_rejection', 'Unhandled promise rejection', reason);
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Handle incoming messages from parent
|
|
56
|
+
*/
|
|
57
|
+
async handleMessage(message) {
|
|
58
|
+
switch (message.type) {
|
|
59
|
+
case 'initialize':
|
|
60
|
+
await this.handleInitialize(message);
|
|
61
|
+
break;
|
|
62
|
+
case 'execute_function':
|
|
63
|
+
await this.handleExecuteFunction(message);
|
|
64
|
+
break;
|
|
65
|
+
case 'execute_lifecycle':
|
|
66
|
+
await this.handleExecuteLifecycle(message);
|
|
67
|
+
break;
|
|
68
|
+
case 'execute_job':
|
|
69
|
+
await this.handleExecuteJob(message);
|
|
70
|
+
break;
|
|
71
|
+
case 'shutdown':
|
|
72
|
+
await this.handleShutdown(message);
|
|
73
|
+
break;
|
|
74
|
+
case 'cancel':
|
|
75
|
+
await this.handleCancel(message);
|
|
76
|
+
break;
|
|
77
|
+
default:
|
|
78
|
+
this.sendError('unknown_message_type', `Unknown message type: ${message.type}`, new Error('Unknown message type'));
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Handle initialization request
|
|
83
|
+
*/
|
|
84
|
+
async handleInitialize(message) {
|
|
85
|
+
try {
|
|
86
|
+
const { appConfig, appDir } = message.data;
|
|
87
|
+
this.appConfig = appConfig;
|
|
88
|
+
this.appDir = appDir;
|
|
89
|
+
await this.initialize(appConfig, appDir);
|
|
90
|
+
this.initialized = true;
|
|
91
|
+
this.sendMessage({
|
|
92
|
+
...(0, local_engine_utils_1.createBaseMessage)('ready'),
|
|
93
|
+
type: 'ready'
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
catch (error) {
|
|
97
|
+
this.sendError(message.id, 'Initialization failed', error);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Handle function execution request
|
|
102
|
+
*/
|
|
103
|
+
async handleExecuteFunction(message) {
|
|
104
|
+
if (!this.initialized) {
|
|
105
|
+
this.sendError(message.id, 'Child process not initialized', new Error('Not initialized'));
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
this.currentRequestId = message.id;
|
|
109
|
+
const startTime = Date.now();
|
|
110
|
+
try {
|
|
111
|
+
this.sendProgress(message.id, 'Starting function execution', 10);
|
|
112
|
+
const result = await this.executeFunction(message.data);
|
|
113
|
+
const executionTime = Date.now() - startTime;
|
|
114
|
+
this.sendMessage({
|
|
115
|
+
...(0, local_engine_utils_1.createBaseMessage)('success'),
|
|
116
|
+
type: 'success',
|
|
117
|
+
data: {
|
|
118
|
+
requestId: message.id,
|
|
119
|
+
result: (0, local_engine_utils_1.safeSerialize)(result),
|
|
120
|
+
executionTime
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
catch (error) {
|
|
125
|
+
const executionTime = Date.now() - startTime;
|
|
126
|
+
this.sendError(message.id, 'Function execution failed', error, executionTime);
|
|
127
|
+
}
|
|
128
|
+
finally {
|
|
129
|
+
this.currentRequestId = undefined;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Handle lifecycle execution request
|
|
134
|
+
*/
|
|
135
|
+
async handleExecuteLifecycle(message) {
|
|
136
|
+
if (!this.initialized) {
|
|
137
|
+
this.sendError(message.id, 'Child process not initialized', new Error('Not initialized'));
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
140
|
+
this.currentRequestId = message.id;
|
|
141
|
+
const startTime = Date.now();
|
|
142
|
+
try {
|
|
143
|
+
this.sendProgress(message.id, 'Starting lifecycle execution', 10);
|
|
144
|
+
const result = await this.executeLifecycle(message.data);
|
|
145
|
+
const executionTime = Date.now() - startTime;
|
|
146
|
+
this.sendMessage({
|
|
147
|
+
...(0, local_engine_utils_1.createBaseMessage)('success'),
|
|
148
|
+
type: 'success',
|
|
149
|
+
data: {
|
|
150
|
+
requestId: message.id,
|
|
151
|
+
result: (0, local_engine_utils_1.safeSerialize)(result),
|
|
152
|
+
executionTime
|
|
153
|
+
}
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
catch (error) {
|
|
157
|
+
const executionTime = Date.now() - startTime;
|
|
158
|
+
this.sendError(message.id, 'Lifecycle execution failed', error, executionTime);
|
|
159
|
+
}
|
|
160
|
+
finally {
|
|
161
|
+
this.currentRequestId = undefined;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Handle job execution request
|
|
166
|
+
*/
|
|
167
|
+
async handleExecuteJob(message) {
|
|
168
|
+
if (!this.initialized) {
|
|
169
|
+
this.sendError(message.id, 'Child process not initialized', new Error('Not initialized'));
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
this.currentRequestId = message.id;
|
|
173
|
+
const startTime = Date.now();
|
|
174
|
+
try {
|
|
175
|
+
this.sendProgress(message.id, 'Starting job execution', 10);
|
|
176
|
+
const result = await this.executeJob(message.data);
|
|
177
|
+
const executionTime = Date.now() - startTime;
|
|
178
|
+
this.sendMessage({
|
|
179
|
+
...(0, local_engine_utils_1.createBaseMessage)('success'),
|
|
180
|
+
type: 'success',
|
|
181
|
+
data: {
|
|
182
|
+
requestId: message.id,
|
|
183
|
+
result: (0, local_engine_utils_1.safeSerialize)(result),
|
|
184
|
+
executionTime
|
|
185
|
+
}
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
catch (error) {
|
|
189
|
+
const executionTime = Date.now() - startTime;
|
|
190
|
+
this.sendError(message.id, 'Job execution failed', error, executionTime);
|
|
191
|
+
}
|
|
192
|
+
finally {
|
|
193
|
+
this.currentRequestId = undefined;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Handle shutdown request
|
|
198
|
+
*/
|
|
199
|
+
async handleShutdown(message) {
|
|
200
|
+
try {
|
|
201
|
+
await this.cleanup();
|
|
202
|
+
this.sendMessage({
|
|
203
|
+
...(0, local_engine_utils_1.createBaseMessage)('success'),
|
|
204
|
+
type: 'success',
|
|
205
|
+
data: {
|
|
206
|
+
requestId: message.id,
|
|
207
|
+
result: { shutdown: true },
|
|
208
|
+
executionTime: 0
|
|
209
|
+
}
|
|
210
|
+
});
|
|
211
|
+
// Give some time for the message to be sent before exiting
|
|
212
|
+
setTimeout(() => {
|
|
213
|
+
process.exit(0);
|
|
214
|
+
}, 100);
|
|
215
|
+
}
|
|
216
|
+
catch (error) {
|
|
217
|
+
this.sendError(message.id, 'Shutdown failed', error);
|
|
218
|
+
process.exit(1);
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Handle cancellation request
|
|
223
|
+
*/
|
|
224
|
+
async handleCancel(message) {
|
|
225
|
+
const { cancelId } = message.data;
|
|
226
|
+
if (this.currentRequestId === cancelId) {
|
|
227
|
+
this.sendError(cancelId, 'Request cancelled by parent', new Error('Request cancelled'));
|
|
228
|
+
this.currentRequestId = undefined;
|
|
229
|
+
}
|
|
230
|
+
// Send acknowledgment
|
|
231
|
+
this.sendMessage({
|
|
232
|
+
...(0, local_engine_utils_1.createBaseMessage)('success'),
|
|
233
|
+
type: 'success',
|
|
234
|
+
data: {
|
|
235
|
+
requestId: message.id,
|
|
236
|
+
result: { cancelled: cancelId },
|
|
237
|
+
executionTime: 0
|
|
238
|
+
}
|
|
239
|
+
});
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Send ready message to parent
|
|
243
|
+
*/
|
|
244
|
+
sendReady() {
|
|
245
|
+
this.sendMessage({
|
|
246
|
+
...(0, local_engine_utils_1.createBaseMessage)('ready'),
|
|
247
|
+
type: 'ready'
|
|
248
|
+
});
|
|
249
|
+
}
|
|
250
|
+
/**
|
|
251
|
+
* Send progress update to parent
|
|
252
|
+
*/
|
|
253
|
+
sendProgress(requestId, message, progress) {
|
|
254
|
+
this.sendMessage({
|
|
255
|
+
...(0, local_engine_utils_1.createBaseMessage)('progress'),
|
|
256
|
+
type: 'progress',
|
|
257
|
+
data: {
|
|
258
|
+
requestId,
|
|
259
|
+
message,
|
|
260
|
+
progress
|
|
261
|
+
}
|
|
262
|
+
});
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* Send log message to parent
|
|
266
|
+
*/
|
|
267
|
+
sendLog(level, message, requestId) {
|
|
268
|
+
this.sendMessage({
|
|
269
|
+
...(0, local_engine_utils_1.createBaseMessage)('log'),
|
|
270
|
+
type: 'log',
|
|
271
|
+
data: {
|
|
272
|
+
requestId,
|
|
273
|
+
level,
|
|
274
|
+
message,
|
|
275
|
+
timestamp: Date.now()
|
|
276
|
+
}
|
|
277
|
+
});
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Send error message to parent
|
|
281
|
+
*/
|
|
282
|
+
sendError(requestId, message, error, executionTime = 0) {
|
|
283
|
+
const errorData = (0, local_engine_utils_1.serializeError)(error);
|
|
284
|
+
this.sendMessage({
|
|
285
|
+
...(0, local_engine_utils_1.createBaseMessage)('error'),
|
|
286
|
+
type: 'error',
|
|
287
|
+
data: {
|
|
288
|
+
requestId,
|
|
289
|
+
error: message,
|
|
290
|
+
stack: errorData.stack,
|
|
291
|
+
executionTime
|
|
292
|
+
}
|
|
293
|
+
});
|
|
294
|
+
}
|
|
295
|
+
/**
|
|
296
|
+
* Send a message to the parent process
|
|
297
|
+
*/
|
|
298
|
+
sendMessage(message) {
|
|
299
|
+
(0, local_engine_utils_1.logIPCMessage)('SEND', message, '[IPC Child]');
|
|
300
|
+
(0, local_engine_utils_1.sendIPCMessage)(process, message);
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
exports.LocalEngineChildBase = LocalEngineChildBase;
|
|
304
|
+
//# sourceMappingURL=local-engine-child-base.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-engine-child-base.js","sourceRoot":"","sources":["../../../src/local_engine/local-engine-child-base.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { AppConfig, FunctionExecutionRequest, LifecycleExecutionRequest, JobExecutionRequest } from './local-engine-types';
|
|
2
|
+
export declare class LocalEngineClient {
|
|
3
|
+
private connections;
|
|
4
|
+
/**
|
|
5
|
+
* Get or create a connection for the specified app
|
|
6
|
+
*/
|
|
7
|
+
private getConnection;
|
|
8
|
+
/**
|
|
9
|
+
* Create a new IPC connection using the unified wrapper
|
|
10
|
+
*/
|
|
11
|
+
private createConnection;
|
|
12
|
+
/**
|
|
13
|
+
* Set up message handlers for a connection
|
|
14
|
+
*/
|
|
15
|
+
private setupMessageHandlers;
|
|
16
|
+
/**
|
|
17
|
+
* Set up error handlers for a connection
|
|
18
|
+
*/
|
|
19
|
+
private setupErrorHandlers;
|
|
20
|
+
/**
|
|
21
|
+
* Handle messages from child process
|
|
22
|
+
*/
|
|
23
|
+
private handleChildMessage;
|
|
24
|
+
/**
|
|
25
|
+
* Handle ready message from child
|
|
26
|
+
*/
|
|
27
|
+
private handleReadyMessage;
|
|
28
|
+
/**
|
|
29
|
+
* Handle progress message from child
|
|
30
|
+
*/
|
|
31
|
+
private handleProgressMessage;
|
|
32
|
+
/**
|
|
33
|
+
* Handle log message from child
|
|
34
|
+
*/
|
|
35
|
+
private handleLogMessage;
|
|
36
|
+
/**
|
|
37
|
+
* Handle success message from child
|
|
38
|
+
*/
|
|
39
|
+
private handleSuccessMessage;
|
|
40
|
+
/**
|
|
41
|
+
* Handle error message from child
|
|
42
|
+
*/
|
|
43
|
+
private handleErrorMessage;
|
|
44
|
+
/**
|
|
45
|
+
* Handle connection errors
|
|
46
|
+
*/
|
|
47
|
+
private handleConnectionError;
|
|
48
|
+
/**
|
|
49
|
+
* Handle connection exit
|
|
50
|
+
*/
|
|
51
|
+
private handleConnectionExit;
|
|
52
|
+
/**
|
|
53
|
+
* Initialize child process
|
|
54
|
+
*/
|
|
55
|
+
private initializeChild;
|
|
56
|
+
/**
|
|
57
|
+
* Send a request and wait for response
|
|
58
|
+
*/
|
|
59
|
+
private sendRequest;
|
|
60
|
+
/**
|
|
61
|
+
* Execute a function using IPC
|
|
62
|
+
*/
|
|
63
|
+
executeFunction(request: FunctionExecutionRequest, appConfig: AppConfig, appDir: string): Promise<any>;
|
|
64
|
+
/**
|
|
65
|
+
* Execute a lifecycle method using IPC
|
|
66
|
+
*/
|
|
67
|
+
executeLifecycle(request: LifecycleExecutionRequest, appConfig: AppConfig, appDir: string): Promise<any>;
|
|
68
|
+
/**
|
|
69
|
+
* Execute a job using IPC
|
|
70
|
+
*/
|
|
71
|
+
executeJob(request: JobExecutionRequest, appConfig: AppConfig, appDir: string): Promise<any>;
|
|
72
|
+
/**
|
|
73
|
+
* Close a specific connection
|
|
74
|
+
*/
|
|
75
|
+
closeConnection(connectionKey: string): Promise<void>;
|
|
76
|
+
/**
|
|
77
|
+
* Close all connections
|
|
78
|
+
*/
|
|
79
|
+
closeAllConnections(): Promise<void>;
|
|
80
|
+
}
|