@optimizely/ocp-local-env 1.0.0-beta.10

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 (244) hide show
  1. package/README.md +51 -0
  2. package/dist/package.json +112 -0
  3. package/dist/public/bundle.82dc5d29fffb9f205051.js +3 -0
  4. package/dist/public/bundle.82dc5d29fffb9f205051.js.LICENSE.txt +92 -0
  5. package/dist/public/bundle.82dc5d29fffb9f205051.js.map +1 -0
  6. package/dist/public/index.html +1 -0
  7. package/dist/src/cli.d.ts +2 -0
  8. package/dist/src/cli.js +115 -0
  9. package/dist/src/cli.js.map +1 -0
  10. package/dist/src/executor/DestinationExecutor.d.ts +19 -0
  11. package/dist/src/executor/DestinationExecutor.js +72 -0
  12. package/dist/src/executor/DestinationExecutor.js.map +1 -0
  13. package/dist/src/executor/FunctionExecutor.d.ts +67 -0
  14. package/dist/src/executor/FunctionExecutor.js +189 -0
  15. package/dist/src/executor/FunctionExecutor.js.map +1 -0
  16. package/dist/src/executor/JobExecutor.d.ts +79 -0
  17. package/dist/src/executor/JobExecutor.js +215 -0
  18. package/dist/src/executor/JobExecutor.js.map +1 -0
  19. package/dist/src/executor/LifecycleExecutor.d.ts +64 -0
  20. package/dist/src/executor/LifecycleExecutor.js +167 -0
  21. package/dist/src/executor/LifecycleExecutor.js.map +1 -0
  22. package/dist/src/executor/SourceExecutor.d.ts +32 -0
  23. package/dist/src/executor/SourceExecutor.js +163 -0
  24. package/dist/src/executor/SourceExecutor.js.map +1 -0
  25. package/dist/src/executor/watcher.d.ts +62 -0
  26. package/dist/src/executor/watcher.js +213 -0
  27. package/dist/src/executor/watcher.js.map +1 -0
  28. package/dist/src/functions/hello.d.ts +4 -0
  29. package/dist/src/functions/hello.js +8 -0
  30. package/dist/src/functions/hello.js.map +1 -0
  31. package/dist/src/index.d.ts +1 -0
  32. package/dist/src/index.js +9 -0
  33. package/dist/src/index.js.map +1 -0
  34. package/dist/src/jobs/dailyJob.d.ts +4 -0
  35. package/dist/src/jobs/dailyJob.js +8 -0
  36. package/dist/src/jobs/dailyJob.js.map +1 -0
  37. package/dist/src/local_engine/LocalFunctionApi.d.ts +17 -0
  38. package/dist/src/local_engine/LocalFunctionApi.js +54 -0
  39. package/dist/src/local_engine/LocalFunctionApi.js.map +1 -0
  40. package/dist/src/local_engine/LocalJobApi.d.ts +67 -0
  41. package/dist/src/local_engine/LocalJobApi.js +205 -0
  42. package/dist/src/local_engine/LocalJobApi.js.map +1 -0
  43. package/dist/src/local_engine/LocalNotifier.d.ts +9 -0
  44. package/dist/src/local_engine/LocalNotifier.js +26 -0
  45. package/dist/src/local_engine/LocalNotifier.js.map +1 -0
  46. package/dist/src/local_engine/local-engine-child-base.d.ts +110 -0
  47. package/dist/src/local_engine/local-engine-child-base.js +607 -0
  48. package/dist/src/local_engine/local-engine-child-base.js.map +1 -0
  49. package/dist/src/local_engine/local-engine-client.d.ts +161 -0
  50. package/dist/src/local_engine/local-engine-client.js +888 -0
  51. package/dist/src/local_engine/local-engine-client.js.map +1 -0
  52. package/dist/src/local_engine/local-engine-types.d.ts +245 -0
  53. package/dist/src/local_engine/local-engine-types.js +6 -0
  54. package/dist/src/local_engine/local-engine-types.js.map +1 -0
  55. package/dist/src/local_engine/local-engine-unified.d.ts +71 -0
  56. package/dist/src/local_engine/local-engine-unified.js +723 -0
  57. package/dist/src/local_engine/local-engine-unified.js.map +1 -0
  58. package/dist/src/local_engine/local-engine-utils.d.ts +68 -0
  59. package/dist/src/local_engine/local-engine-utils.js +219 -0
  60. package/dist/src/local_engine/local-engine-utils.js.map +1 -0
  61. package/dist/src/local_engine/localSDKConfig.d.ts +40 -0
  62. package/dist/src/local_engine/localSDKConfig.js +247 -0
  63. package/dist/src/local_engine/localSDKConfig.js.map +1 -0
  64. package/dist/src/local_engine/storage/BaseKVStoreWrapper.d.ts +37 -0
  65. package/dist/src/local_engine/storage/BaseKVStoreWrapper.js +110 -0
  66. package/dist/src/local_engine/storage/BaseKVStoreWrapper.js.map +1 -0
  67. package/dist/src/local_engine/storage/LocalConfigStore.d.ts +74 -0
  68. package/dist/src/local_engine/storage/LocalConfigStore.js +178 -0
  69. package/dist/src/local_engine/storage/LocalConfigStore.js.map +1 -0
  70. package/dist/src/local_engine/storage/LocalJobStore.d.ts +111 -0
  71. package/dist/src/local_engine/storage/LocalJobStore.js +249 -0
  72. package/dist/src/local_engine/storage/LocalJobStore.js.map +1 -0
  73. package/dist/src/local_engine/storage/LocalKVStore.d.ts +106 -0
  74. package/dist/src/local_engine/storage/LocalKVStore.js +1061 -0
  75. package/dist/src/local_engine/storage/LocalKVStore.js.map +1 -0
  76. package/dist/src/local_engine/storage/LocalNotificationStore.d.ts +28 -0
  77. package/dist/src/local_engine/storage/LocalNotificationStore.js +149 -0
  78. package/dist/src/local_engine/storage/LocalNotificationStore.js.map +1 -0
  79. package/dist/src/local_engine/storage/LocalSecretsStore.d.ts +115 -0
  80. package/dist/src/local_engine/storage/LocalSecretsStore.js +350 -0
  81. package/dist/src/local_engine/storage/LocalSecretsStore.js.map +1 -0
  82. package/dist/src/local_engine/storage/LocalSecretsStoreWrapper.d.ts +19 -0
  83. package/dist/src/local_engine/storage/LocalSecretsStoreWrapper.js +52 -0
  84. package/dist/src/local_engine/storage/LocalSecretsStoreWrapper.js.map +1 -0
  85. package/dist/src/local_engine/storage/LocalSettingsStore.d.ts +168 -0
  86. package/dist/src/local_engine/storage/LocalSettingsStore.js +509 -0
  87. package/dist/src/local_engine/storage/LocalSettingsStore.js.map +1 -0
  88. package/dist/src/local_engine/storage/LocalSettingsStoreWrapper.d.ts +15 -0
  89. package/dist/src/local_engine/storage/LocalSettingsStoreWrapper.js +28 -0
  90. package/dist/src/local_engine/storage/LocalSettingsStoreWrapper.js.map +1 -0
  91. package/dist/src/local_engine/storage/NumberSet.d.ts +21 -0
  92. package/dist/src/local_engine/storage/NumberSet.js +32 -0
  93. package/dist/src/local_engine/storage/NumberSet.js.map +1 -0
  94. package/dist/src/local_engine/storage/SourceDataStore.d.ts +23 -0
  95. package/dist/src/local_engine/storage/SourceDataStore.js +83 -0
  96. package/dist/src/local_engine/storage/SourceDataStore.js.map +1 -0
  97. package/dist/src/local_engine/storage/SourceJobExecutionStore.d.ts +25 -0
  98. package/dist/src/local_engine/storage/SourceJobExecutionStore.js +61 -0
  99. package/dist/src/local_engine/storage/SourceJobExecutionStore.js.map +1 -0
  100. package/dist/src/local_engine/storage/StringSet.d.ts +21 -0
  101. package/dist/src/local_engine/storage/StringSet.js +32 -0
  102. package/dist/src/local_engine/storage/StringSet.js.map +1 -0
  103. package/dist/src/local_engine/types.d.ts +53 -0
  104. package/dist/src/local_engine/types.js +6 -0
  105. package/dist/src/local_engine/types.js.map +1 -0
  106. package/dist/src/local_engine/utils.d.ts +33 -0
  107. package/dist/src/local_engine/utils.js +143 -0
  108. package/dist/src/local_engine/utils.js.map +1 -0
  109. package/dist/src/logging/LogManager.d.ts +246 -0
  110. package/dist/src/logging/LogManager.js +343 -0
  111. package/dist/src/logging/LogManager.js.map +1 -0
  112. package/dist/src/server/api/destinations.d.ts +7 -0
  113. package/dist/src/server/api/destinations.js +170 -0
  114. package/dist/src/server/api/destinations.js.map +1 -0
  115. package/dist/src/server/api/functions.d.ts +7 -0
  116. package/dist/src/server/api/functions.js +80 -0
  117. package/dist/src/server/api/functions.js.map +1 -0
  118. package/dist/src/server/api/jobs.d.ts +10 -0
  119. package/dist/src/server/api/jobs.js +244 -0
  120. package/dist/src/server/api/jobs.js.map +1 -0
  121. package/dist/src/server/api/settings.d.ts +6 -0
  122. package/dist/src/server/api/settings.js +116 -0
  123. package/dist/src/server/api/settings.js.map +1 -0
  124. package/dist/src/server/api/sources.d.ts +7 -0
  125. package/dist/src/server/api/sources.js +382 -0
  126. package/dist/src/server/api/sources.js.map +1 -0
  127. package/dist/src/server/api/stores.d.ts +2 -0
  128. package/dist/src/server/api/stores.js +341 -0
  129. package/dist/src/server/api/stores.js.map +1 -0
  130. package/dist/src/server/api/v1.d.ts +10 -0
  131. package/dist/src/server/api/v1.js +718 -0
  132. package/dist/src/server/api/v1.js.map +1 -0
  133. package/dist/src/server/api.d.ts +8 -0
  134. package/dist/src/server/api.js +217 -0
  135. package/dist/src/server/api.js.map +1 -0
  136. package/dist/src/server/app-discovery.d.ts +5 -0
  137. package/dist/src/server/app-discovery.js +113 -0
  138. package/dist/src/server/app-discovery.js.map +1 -0
  139. package/dist/src/server/config.d.ts +26 -0
  140. package/dist/src/server/config.js +112 -0
  141. package/dist/src/server/config.js.map +1 -0
  142. package/dist/src/server/mockDataGenerator.d.ts +1 -0
  143. package/dist/src/server/mockDataGenerator.js +154 -0
  144. package/dist/src/server/mockDataGenerator.js.map +1 -0
  145. package/dist/src/server/websocket.d.ts +0 -0
  146. package/dist/src/server/websocket.js +2 -0
  147. package/dist/src/server/websocket.js.map +1 -0
  148. package/dist/src/server.d.ts +2 -0
  149. package/dist/src/server.js +735 -0
  150. package/dist/src/server.js.map +1 -0
  151. package/dist/src/types/app.d.ts +154 -0
  152. package/dist/src/types/app.js +24 -0
  153. package/dist/src/types/app.js.map +1 -0
  154. package/dist/src/types/kvstore.d.ts +320 -0
  155. package/dist/src/types/kvstore.js +5 -0
  156. package/dist/src/types/kvstore.js.map +1 -0
  157. package/dist/src/ui/components/App.d.ts +6 -0
  158. package/dist/src/ui/components/App.js +432 -0
  159. package/dist/src/ui/components/App.js.map +1 -0
  160. package/dist/src/ui/components/DestinationBatchEditor.d.ts +7 -0
  161. package/dist/src/ui/components/DestinationBatchEditor.js +160 -0
  162. package/dist/src/ui/components/DestinationBatchEditor.js.map +1 -0
  163. package/dist/src/ui/components/DestinationSchemaViewer.d.ts +7 -0
  164. package/dist/src/ui/components/DestinationSchemaViewer.js +61 -0
  165. package/dist/src/ui/components/DestinationSchemaViewer.js.map +1 -0
  166. package/dist/src/ui/components/DestinationsView.d.ts +14 -0
  167. package/dist/src/ui/components/DestinationsView.js +68 -0
  168. package/dist/src/ui/components/DestinationsView.js.map +1 -0
  169. package/dist/src/ui/components/FunctionsView.d.ts +13 -0
  170. package/dist/src/ui/components/FunctionsView.js +288 -0
  171. package/dist/src/ui/components/FunctionsView.js.map +1 -0
  172. package/dist/src/ui/components/JobsView.d.ts +13 -0
  173. package/dist/src/ui/components/JobsView.js +320 -0
  174. package/dist/src/ui/components/JobsView.js.map +1 -0
  175. package/dist/src/ui/components/KVStoreViewer.d.ts +11 -0
  176. package/dist/src/ui/components/KVStoreViewer.js +168 -0
  177. package/dist/src/ui/components/KVStoreViewer.js.map +1 -0
  178. package/dist/src/ui/components/MetadataModal.d.ts +14 -0
  179. package/dist/src/ui/components/MetadataModal.js +28 -0
  180. package/dist/src/ui/components/MetadataModal.js.map +1 -0
  181. package/dist/src/ui/components/MetadataModal.test.d.ts +1 -0
  182. package/dist/src/ui/components/MetadataModal.test.js +143 -0
  183. package/dist/src/ui/components/MetadataModal.test.js.map +1 -0
  184. package/dist/src/ui/components/NotificationViewer.d.ts +16 -0
  185. package/dist/src/ui/components/NotificationViewer.js +69 -0
  186. package/dist/src/ui/components/NotificationViewer.js.map +1 -0
  187. package/dist/src/ui/components/SecretsStoreViewer.d.ts +11 -0
  188. package/dist/src/ui/components/SecretsStoreViewer.js +179 -0
  189. package/dist/src/ui/components/SecretsStoreViewer.js.map +1 -0
  190. package/dist/src/ui/components/SettingsStoreViewer.d.ts +24 -0
  191. package/dist/src/ui/components/SettingsStoreViewer.js +132 -0
  192. package/dist/src/ui/components/SettingsStoreViewer.js.map +1 -0
  193. package/dist/src/ui/components/SourceDataViewer.d.ts +8 -0
  194. package/dist/src/ui/components/SourceDataViewer.js +84 -0
  195. package/dist/src/ui/components/SourceDataViewer.js.map +1 -0
  196. package/dist/src/ui/components/SourceJobsSection.d.ts +8 -0
  197. package/dist/src/ui/components/SourceJobsSection.js +99 -0
  198. package/dist/src/ui/components/SourceJobsSection.js.map +1 -0
  199. package/dist/src/ui/components/SourceLifecycleSection.d.ts +7 -0
  200. package/dist/src/ui/components/SourceLifecycleSection.js +58 -0
  201. package/dist/src/ui/components/SourceLifecycleSection.js.map +1 -0
  202. package/dist/src/ui/components/SourceSchemaViewer.d.ts +7 -0
  203. package/dist/src/ui/components/SourceSchemaViewer.js +65 -0
  204. package/dist/src/ui/components/SourceSchemaViewer.js.map +1 -0
  205. package/dist/src/ui/components/SourceWebhookEditor.d.ts +8 -0
  206. package/dist/src/ui/components/SourceWebhookEditor.js +181 -0
  207. package/dist/src/ui/components/SourceWebhookEditor.js.map +1 -0
  208. package/dist/src/ui/components/SourcesView.d.ts +14 -0
  209. package/dist/src/ui/components/SourcesView.js +74 -0
  210. package/dist/src/ui/components/SourcesView.js.map +1 -0
  211. package/dist/src/ui/components/StoreViewer.d.ts +16 -0
  212. package/dist/src/ui/components/StoreViewer.js +86 -0
  213. package/dist/src/ui/components/StoreViewer.js.map +1 -0
  214. package/dist/src/ui/components/TabbedConsole.d.ts +17 -0
  215. package/dist/src/ui/components/TabbedConsole.js +163 -0
  216. package/dist/src/ui/components/TabbedConsole.js.map +1 -0
  217. package/dist/src/ui/components/common/DataTree.d.ts +15 -0
  218. package/dist/src/ui/components/common/DataTree.js +95 -0
  219. package/dist/src/ui/components/common/DataTree.js.map +1 -0
  220. package/dist/src/ui/components/common/EyeIcon.d.ts +11 -0
  221. package/dist/src/ui/components/common/EyeIcon.js +11 -0
  222. package/dist/src/ui/components/common/EyeIcon.js.map +1 -0
  223. package/dist/src/ui/hooks/useEntityNavigation.d.ts +72 -0
  224. package/dist/src/ui/hooks/useEntityNavigation.js +150 -0
  225. package/dist/src/ui/hooks/useEntityNavigation.js.map +1 -0
  226. package/dist/src/ui/hooks/useQueryParams.d.ts +6 -0
  227. package/dist/src/ui/hooks/useQueryParams.js +39 -0
  228. package/dist/src/ui/hooks/useQueryParams.js.map +1 -0
  229. package/dist/src/ui/index.d.ts +1 -0
  230. package/dist/src/ui/index.js +23 -0
  231. package/dist/src/ui/index.js.map +1 -0
  232. package/dist/src/ui/store/formStateSlice.d.ts +54 -0
  233. package/dist/src/ui/store/formStateSlice.js +94 -0
  234. package/dist/src/ui/store/formStateSlice.js.map +1 -0
  235. package/dist/src/ui/store/hooks.d.ts +6 -0
  236. package/dist/src/ui/store/hooks.js +8 -0
  237. package/dist/src/ui/store/hooks.js.map +1 -0
  238. package/dist/src/ui/store/index.d.ts +11 -0
  239. package/dist/src/ui/store/index.js +107 -0
  240. package/dist/src/ui/store/index.js.map +1 -0
  241. package/dist/src/utils/functionEndpoints.d.ts +24 -0
  242. package/dist/src/utils/functionEndpoints.js +45 -0
  243. package/dist/src/utils/functionEndpoints.js.map +1 -0
  244. package/package.json +112 -0
@@ -0,0 +1,205 @@
1
+ "use strict";
2
+ /**
3
+ * Local type definitions matching @zaiusinc/app-sdk interfaces
4
+ * These are defined locally to avoid compile-time dependency on app-sdk
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.LocalJobApi = exports.JobNotFoundError = exports.JobApiError = exports.JobRunStatus = void 0;
8
+ var JobRunStatus;
9
+ (function (JobRunStatus) {
10
+ JobRunStatus["Pending"] = "pending";
11
+ JobRunStatus["Running"] = "running";
12
+ JobRunStatus["Complete"] = "complete";
13
+ JobRunStatus["Error"] = "error";
14
+ JobRunStatus["Terminated"] = "terminated";
15
+ })(JobRunStatus || (exports.JobRunStatus = JobRunStatus = {}));
16
+ class JobApiError extends Error {
17
+ constructor(message) {
18
+ super(message);
19
+ this.name = 'JobApiError';
20
+ }
21
+ }
22
+ exports.JobApiError = JobApiError;
23
+ class JobNotFoundError extends Error {
24
+ constructor(message) {
25
+ super(message);
26
+ this.name = 'JobNotFoundError';
27
+ }
28
+ }
29
+ exports.JobNotFoundError = JobNotFoundError;
30
+ /**
31
+ * Local implementation of JobApi for ocp-local-env
32
+ * Sends IPC messages to parent process to trigger jobs
33
+ *
34
+ * NOTE: This runs in the child process (app context), not the parent process.
35
+ * It communicates with the parent via IPC to request job execution.
36
+ */
37
+ class LocalJobApi {
38
+ /**
39
+ * Trigger a job execution via IPC
40
+ * @throws {JobNotFoundError} if job not found in manifest
41
+ * @throws {JobApiError} if job is already running or other failure
42
+ */
43
+ async trigger(jobName, parameters) {
44
+ return new Promise((resolve, reject) => {
45
+ if (!process.send) {
46
+ reject(new JobApiError('IPC not available - not running in child process'));
47
+ return;
48
+ }
49
+ // Generate request ID for correlation
50
+ const requestId = this.generateRequestId();
51
+ // Set up response handler
52
+ const responseHandler = (message) => {
53
+ if (message.type === 'success' && message.data?.requestId === requestId) {
54
+ process.off('message', responseHandler);
55
+ clearTimeout(timeout);
56
+ const result = message.data.result;
57
+ // Transform to JobDetail format
58
+ const jobDetail = {
59
+ jobId: result.jobId,
60
+ status: this.transformStatus(result.status),
61
+ definition: {
62
+ name: result.jobName,
63
+ parameters: result.parameters
64
+ },
65
+ errors: '',
66
+ startedAt: result.startedAt,
67
+ completedAt: result.completedAt,
68
+ terminatedAt: undefined
69
+ };
70
+ resolve(jobDetail);
71
+ }
72
+ else if (message.type === 'error' && message.data?.requestId === requestId) {
73
+ process.off('message', responseHandler);
74
+ clearTimeout(timeout);
75
+ const errorMsg = message.data.error;
76
+ // Determine error type
77
+ if (errorMsg.includes('not found')) {
78
+ reject(new JobNotFoundError(errorMsg));
79
+ }
80
+ else {
81
+ reject(new JobApiError(errorMsg));
82
+ }
83
+ }
84
+ };
85
+ // Set up timeout
86
+ const timeout = setTimeout(() => {
87
+ process.off('message', responseHandler);
88
+ reject(new JobApiError(`Job trigger request timed out after 30 seconds`));
89
+ }, 30000);
90
+ // Register response handler
91
+ process.on('message', responseHandler);
92
+ // Send IPC message to parent
93
+ const triggerMessage = {
94
+ id: requestId,
95
+ type: 'trigger_job',
96
+ timestamp: Date.now(),
97
+ data: {
98
+ jobName,
99
+ parameters: parameters || {}
100
+ }
101
+ };
102
+ process.send(triggerMessage);
103
+ });
104
+ }
105
+ /**
106
+ * Get details of a specific job execution via IPC
107
+ * @throws {JobNotFoundError} if execution not found
108
+ */
109
+ async getDetail(executionId) {
110
+ return this.sendIPCRequest('get_job_detail', { executionId }, (result) => ({
111
+ jobId: result.jobId,
112
+ status: this.transformStatus(result.status),
113
+ definition: {
114
+ name: result.jobName,
115
+ parameters: result.parameters
116
+ },
117
+ errors: '',
118
+ startedAt: result.startedAt,
119
+ completedAt: result.completedAt,
120
+ terminatedAt: undefined
121
+ }));
122
+ }
123
+ /**
124
+ * Get status of a specific job execution via IPC
125
+ * @throws {JobNotFoundError} if execution not found
126
+ */
127
+ async getStatus(executionId) {
128
+ return this.sendIPCRequest('get_job_status', { executionId }, (result) => this.transformStatus(result.status));
129
+ }
130
+ /**
131
+ * Generic IPC request helper
132
+ */
133
+ sendIPCRequest(messageType, data, transform) {
134
+ return new Promise((resolve, reject) => {
135
+ if (!process.send) {
136
+ reject(new JobApiError('IPC not available - not running in child process'));
137
+ return;
138
+ }
139
+ const requestId = this.generateRequestId();
140
+ const responseHandler = (message) => {
141
+ if (message.type === 'success' && message.data?.requestId === requestId) {
142
+ process.off('message', responseHandler);
143
+ clearTimeout(timeout);
144
+ try {
145
+ const transformed = transform(message.data.result);
146
+ resolve(transformed);
147
+ }
148
+ catch (error) {
149
+ reject(new JobApiError(`Failed to transform response: ${error.message}`));
150
+ }
151
+ }
152
+ else if (message.type === 'error' && message.data?.requestId === requestId) {
153
+ process.off('message', responseHandler);
154
+ clearTimeout(timeout);
155
+ const errorMsg = message.data.error;
156
+ if (errorMsg.includes('not found')) {
157
+ reject(new JobNotFoundError(errorMsg));
158
+ }
159
+ else {
160
+ reject(new JobApiError(errorMsg));
161
+ }
162
+ }
163
+ };
164
+ const timeout = setTimeout(() => {
165
+ process.off('message', responseHandler);
166
+ reject(new JobApiError(`${messageType} request timed out after 30 seconds`));
167
+ }, 30000);
168
+ process.on('message', responseHandler);
169
+ const ipcMessage = {
170
+ id: requestId,
171
+ type: messageType,
172
+ timestamp: Date.now(),
173
+ data
174
+ };
175
+ process.send(ipcMessage);
176
+ });
177
+ }
178
+ /**
179
+ * Generate a unique request ID for IPC correlation
180
+ */
181
+ generateRequestId() {
182
+ return `${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
183
+ }
184
+ /**
185
+ * Transform status string to JobRunStatus enum
186
+ */
187
+ transformStatus(status) {
188
+ switch (status) {
189
+ case 'pending':
190
+ return JobRunStatus.Pending;
191
+ case 'running':
192
+ return JobRunStatus.Running;
193
+ case 'completed':
194
+ return JobRunStatus.Complete;
195
+ case 'failed':
196
+ return JobRunStatus.Error;
197
+ case 'interrupted':
198
+ return JobRunStatus.Terminated;
199
+ default:
200
+ return JobRunStatus.Error;
201
+ }
202
+ }
203
+ }
204
+ exports.LocalJobApi = LocalJobApi;
205
+ //# sourceMappingURL=LocalJobApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LocalJobApi.js","sourceRoot":"","sources":["../../../src/local_engine/LocalJobApi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export declare class LocalNotifier {
2
+ private notificationStore;
3
+ constructor(appRootDir?: string);
4
+ setInstallationId(installationId: string): void;
5
+ info(activity: string, title: string, summary: string, details?: string): Promise<void>;
6
+ success(activity: string, title: string, summary: string, details?: string): Promise<void>;
7
+ warn(activity: string, title: string, summary: string, details?: string): Promise<void>;
8
+ error(activity: string, title: string, summary: string, details?: string): Promise<void>;
9
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LocalNotifier = void 0;
4
+ const LocalNotificationStore_1 = require("./storage/LocalNotificationStore");
5
+ class LocalNotifier {
6
+ constructor(appRootDir) {
7
+ this.notificationStore = LocalNotificationStore_1.LocalNotificationStore.getInstance(appRootDir);
8
+ }
9
+ setInstallationId(installationId) {
10
+ this.notificationStore.setInstallationId(installationId);
11
+ }
12
+ async info(activity, title, summary, details) {
13
+ this.notificationStore.addNotification("info", activity, title, summary, details);
14
+ }
15
+ async success(activity, title, summary, details) {
16
+ this.notificationStore.addNotification("success", activity, title, summary, details);
17
+ }
18
+ async warn(activity, title, summary, details) {
19
+ this.notificationStore.addNotification("warn", activity, title, summary, details);
20
+ }
21
+ async error(activity, title, summary, details) {
22
+ this.notificationStore.addNotification("error", activity, title, summary, details);
23
+ }
24
+ }
25
+ exports.LocalNotifier = LocalNotifier;
26
+ //# sourceMappingURL=LocalNotifier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LocalNotifier.js","sourceRoot":"","sources":["../../../src/local_engine/LocalNotifier.ts"],"names":[],"mappings":";;;AAAA,6EAA0E;AAE1E,MAAa,aAAa;IAGxB,YAAY,UAAmB;QAC7B,IAAI,CAAC,iBAAiB,GAAG,+CAAsB,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC1E,CAAC;IAEM,iBAAiB,CAAC,cAAsB;QAC7C,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,IAAI,CACR,QAAgB,EAChB,KAAa,EACb,OAAe,EACf,OAAgB;QAEhB,IAAI,CAAC,iBAAiB,CAAC,eAAe,CACpC,MAAM,EACN,QAAQ,EACR,KAAK,EACL,OAAO,EACP,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CACX,QAAgB,EAChB,KAAa,EACb,OAAe,EACf,OAAgB;QAEhB,IAAI,CAAC,iBAAiB,CAAC,eAAe,CACpC,SAAS,EACT,QAAQ,EACR,KAAK,EACL,OAAO,EACP,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CACR,QAAgB,EAChB,KAAa,EACb,OAAe,EACf,OAAgB;QAEhB,IAAI,CAAC,iBAAiB,CAAC,eAAe,CACpC,MAAM,EACN,QAAQ,EACR,KAAK,EACL,OAAO,EACP,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAK,CACT,QAAgB,EAChB,KAAa,EACb,OAAe,EACf,OAAgB;QAEhB,IAAI,CAAC,iBAAiB,CAAC,eAAe,CACpC,OAAO,EACP,QAAQ,EACR,KAAK,EACL,OAAO,EACP,OAAO,CACR,CAAC;IACJ,CAAC;CACF;AAtED,sCAsEC"}
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Base class for IPC-enabled child processes
3
+ */
4
+ import { ChildMessage, AppConfig } from './local-engine-types';
5
+ export declare abstract class LocalEngineChildBase {
6
+ protected appConfig?: AppConfig;
7
+ protected appDir?: string;
8
+ protected initialized: boolean;
9
+ protected currentRequestId?: string;
10
+ constructor();
11
+ /**
12
+ * Initialize the child process and start listening for messages
13
+ */
14
+ start(): void;
15
+ /**
16
+ * Abstract methods to be implemented by specific wrapper types
17
+ */
18
+ protected abstract initialize(appConfig: AppConfig, appDir: string): Promise<void>;
19
+ protected abstract executeFunction(request: any): Promise<any>;
20
+ protected abstract executeLifecycle(request: any): Promise<any>;
21
+ protected abstract executeJob(request: any): Promise<any>;
22
+ protected abstract executeDestinationReady(data: any): Promise<any>;
23
+ protected abstract executeDestinationDeliver(data: any): Promise<any>;
24
+ protected abstract executeDestinationSchema(data: any): Promise<any>;
25
+ protected abstract cleanup(): Promise<void>;
26
+ /**
27
+ * Set up message handlers for parent communication
28
+ */
29
+ private setupMessageHandlers;
30
+ /**
31
+ * Set up global error handlers
32
+ */
33
+ private setupErrorHandlers;
34
+ /**
35
+ * Handle incoming messages from parent
36
+ */
37
+ private handleMessage;
38
+ /**
39
+ * Handle initialization request
40
+ */
41
+ private handleInitialize;
42
+ /**
43
+ * Handle function execution request
44
+ */
45
+ private handleExecuteFunction;
46
+ /**
47
+ * Handle lifecycle execution request
48
+ */
49
+ private handleExecuteLifecycle;
50
+ /**
51
+ * Handle job execution request
52
+ */
53
+ private handleExecuteJob;
54
+ /**
55
+ * Handle destination ready execution request
56
+ */
57
+ private handleExecuteDestinationReady;
58
+ /**
59
+ * Handle destination deliver execution request
60
+ */
61
+ private handleExecuteDestinationDeliver;
62
+ /**
63
+ * Handle destination schema execution request
64
+ */
65
+ private handleExecuteDestinationSchema;
66
+ /**
67
+ * Handle source webhook execution request
68
+ */
69
+ private handleExecuteSourceWebhook;
70
+ /**
71
+ * Handle source lifecycle execution request
72
+ */
73
+ private handleExecuteSourceLifecycle;
74
+ /**
75
+ * Handle source job execution request
76
+ */
77
+ private handleExecuteSourceJob;
78
+ /**
79
+ * Handle source schema execution request
80
+ */
81
+ private handleExecuteSourceSchema;
82
+ /**
83
+ * Handle shutdown request
84
+ */
85
+ private handleShutdown;
86
+ /**
87
+ * Handle cancellation request
88
+ */
89
+ private handleCancel;
90
+ /**
91
+ * Send ready message to parent
92
+ */
93
+ protected sendReady(): void;
94
+ /**
95
+ * Send progress update to parent
96
+ */
97
+ protected sendProgress(requestId: string, message: string, progress?: number): void;
98
+ /**
99
+ * Send log message to parent
100
+ */
101
+ protected sendLog(level: 'debug' | 'info' | 'warn' | 'error', message: string, requestId?: string): void;
102
+ /**
103
+ * Send error message to parent
104
+ */
105
+ protected sendError(requestId: string, message: string, error: any, executionTime?: number): void;
106
+ /**
107
+ * Send a message to the parent process
108
+ */
109
+ protected sendMessage(message: ChildMessage): void;
110
+ }