@optimizely/ocp-local-env 1.0.0-beta.8 → 1.0.1

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 (196) hide show
  1. package/README.md +18 -133
  2. package/dist/package.json +17 -9
  3. package/dist/public/bundle.fa87c838198caf8c051a.js +3 -0
  4. package/dist/public/{bundle.0a495807b6ef336cb500.js.LICENSE.txt → bundle.fa87c838198caf8c051a.js.LICENSE.txt} +13 -3
  5. package/dist/public/bundle.fa87c838198caf8c051a.js.map +1 -0
  6. package/dist/public/index.html +1 -1
  7. package/dist/src/cli.js +2 -2
  8. package/dist/src/cli.js.map +1 -1
  9. package/dist/src/executor/FunctionExecutor.js +8 -5
  10. package/dist/src/executor/FunctionExecutor.js.map +1 -1
  11. package/dist/src/executor/JobExecutor.js +0 -17
  12. package/dist/src/executor/JobExecutor.js.map +1 -1
  13. package/dist/src/executor/LifecycleExecutor.js +11 -2
  14. package/dist/src/executor/LifecycleExecutor.js.map +1 -1
  15. package/dist/src/executor/watcher.d.ts +6 -0
  16. package/dist/src/executor/watcher.js +45 -0
  17. package/dist/src/executor/watcher.js.map +1 -1
  18. package/dist/src/local_engine/LocalJobApi.d.ts +31 -2
  19. package/dist/src/local_engine/LocalJobApi.js +42 -17
  20. package/dist/src/local_engine/LocalJobApi.js.map +1 -1
  21. package/dist/src/local_engine/LocalNotifier.d.ts +3 -2
  22. package/dist/src/local_engine/LocalNotifier.js +7 -0
  23. package/dist/src/local_engine/LocalNotifier.js.map +1 -1
  24. package/dist/src/local_engine/LocalSourceApi.d.ts +40 -0
  25. package/dist/src/local_engine/LocalSourceApi.js +69 -0
  26. package/dist/src/local_engine/LocalSourceApi.js.map +1 -0
  27. package/dist/src/local_engine/local-engine-child-base.d.ts +0 -12
  28. package/dist/src/local_engine/local-engine-child-base.js +0 -127
  29. package/dist/src/local_engine/local-engine-child-base.js.map +1 -1
  30. package/dist/src/local_engine/local-engine-client.d.ts +19 -29
  31. package/dist/src/local_engine/local-engine-client.js +45 -94
  32. package/dist/src/local_engine/local-engine-client.js.map +1 -1
  33. package/dist/src/local_engine/local-engine-types.d.ts +13 -50
  34. package/dist/src/local_engine/local-engine-unified.d.ts +6 -13
  35. package/dist/src/local_engine/local-engine-unified.js +108 -222
  36. package/dist/src/local_engine/local-engine-unified.js.map +1 -1
  37. package/dist/src/local_engine/localSDKConfig.d.ts +6 -0
  38. package/dist/src/local_engine/localSDKConfig.js +66 -1
  39. package/dist/src/local_engine/localSDKConfig.js.map +1 -1
  40. package/dist/src/local_engine/storage/BaseKVStoreWrapper.d.ts +1 -2
  41. package/dist/src/local_engine/storage/BaseKVStoreWrapper.js.map +1 -1
  42. package/dist/src/local_engine/storage/LocalConfigStore.d.ts +7 -13
  43. package/dist/src/local_engine/storage/LocalConfigStore.js +9 -31
  44. package/dist/src/local_engine/storage/LocalConfigStore.js.map +1 -1
  45. package/dist/src/local_engine/storage/LocalKVStore.d.ts +4 -0
  46. package/dist/src/local_engine/storage/LocalKVStore.js +23 -0
  47. package/dist/src/local_engine/storage/LocalKVStore.js.map +1 -1
  48. package/dist/src/local_engine/storage/LocalSettingsStore.d.ts +7 -1
  49. package/dist/src/local_engine/storage/LocalSettingsStore.js +46 -4
  50. package/dist/src/local_engine/storage/LocalSettingsStore.js.map +1 -1
  51. package/dist/src/local_engine/storage/SourceDataStore.d.ts +16 -14
  52. package/dist/src/local_engine/storage/SourceDataStore.js +57 -57
  53. package/dist/src/local_engine/storage/SourceDataStore.js.map +1 -1
  54. package/dist/src/local_engine/utils.d.ts +2 -0
  55. package/dist/src/local_engine/utils.js +4 -2
  56. package/dist/src/local_engine/utils.js.map +1 -1
  57. package/dist/src/server/api/deploy.d.ts +20 -0
  58. package/dist/src/server/api/deploy.js +399 -0
  59. package/dist/src/server/api/deploy.js.map +1 -0
  60. package/dist/src/server/api/destinations.js +1 -1
  61. package/dist/src/server/api/destinations.js.map +1 -1
  62. package/dist/src/server/api/env.d.ts +2 -0
  63. package/dist/src/server/api/env.js +28 -0
  64. package/dist/src/server/api/env.js.map +1 -0
  65. package/dist/src/server/api/functions.js +13 -12
  66. package/dist/src/server/api/functions.js.map +1 -1
  67. package/dist/src/server/api/opalTools.d.ts +4 -0
  68. package/dist/src/server/api/opalTools.js +81 -0
  69. package/dist/src/server/api/opalTools.js.map +1 -0
  70. package/dist/src/server/api/schema.d.ts +6 -0
  71. package/dist/src/server/api/schema.js +95 -0
  72. package/dist/src/server/api/schema.js.map +1 -0
  73. package/dist/src/server/api/sources.d.ts +1 -2
  74. package/dist/src/server/api/sources.js +16 -275
  75. package/dist/src/server/api/sources.js.map +1 -1
  76. package/dist/src/server/api/v1.js +67 -70
  77. package/dist/src/server/api/v1.js.map +1 -1
  78. package/dist/src/server/api.d.ts +4 -0
  79. package/dist/src/server/api.js +133 -11
  80. package/dist/src/server/api.js.map +1 -1
  81. package/dist/src/server/app-discovery.js +37 -4
  82. package/dist/src/server/app-discovery.js.map +1 -1
  83. package/dist/src/server/app-env.d.ts +21 -0
  84. package/dist/src/server/app-env.js +122 -0
  85. package/dist/src/server/app-env.js.map +1 -0
  86. package/dist/src/server/browserFocus.d.ts +5 -0
  87. package/dist/src/server/browserFocus.js +39 -0
  88. package/dist/src/server/browserFocus.js.map +1 -0
  89. package/dist/src/server/config.d.ts +3 -0
  90. package/dist/src/server/config.js +7 -0
  91. package/dist/src/server/config.js.map +1 -1
  92. package/dist/src/server/mockDataGenerator.d.ts +1 -2
  93. package/dist/src/server/mockDataGenerator.js +77 -35
  94. package/dist/src/server/mockDataGenerator.js.map +1 -1
  95. package/dist/src/server/mockToolDataGenerator.d.ts +12 -0
  96. package/dist/src/server/mockToolDataGenerator.js +393 -0
  97. package/dist/src/server/mockToolDataGenerator.js.map +1 -0
  98. package/dist/src/server.js +152 -168
  99. package/dist/src/server.js.map +1 -1
  100. package/dist/src/types/app.d.ts +1 -3
  101. package/dist/src/types/app.js.map +1 -1
  102. package/dist/src/ui/components/App.js +311 -50
  103. package/dist/src/ui/components/App.js.map +1 -1
  104. package/dist/src/ui/components/DeployModal.d.ts +16 -0
  105. package/dist/src/ui/components/DeployModal.js +75 -0
  106. package/dist/src/ui/components/DeployModal.js.map +1 -0
  107. package/dist/src/ui/components/DestinationBatchEditor.d.ts +9 -1
  108. package/dist/src/ui/components/DestinationBatchEditor.js +30 -16
  109. package/dist/src/ui/components/DestinationBatchEditor.js.map +1 -1
  110. package/dist/src/ui/components/DestinationsView.js +5 -1
  111. package/dist/src/ui/components/DestinationsView.js.map +1 -1
  112. package/dist/src/ui/components/EntityNotAvailable.d.ts +15 -0
  113. package/dist/src/ui/components/EntityNotAvailable.js +27 -0
  114. package/dist/src/ui/components/EntityNotAvailable.js.map +1 -0
  115. package/dist/src/ui/components/EnvViewer.d.ts +8 -0
  116. package/dist/src/ui/components/EnvViewer.js +35 -0
  117. package/dist/src/ui/components/EnvViewer.js.map +1 -0
  118. package/dist/src/ui/components/FunctionsView.d.ts +2 -6
  119. package/dist/src/ui/components/FunctionsView.js +106 -124
  120. package/dist/src/ui/components/FunctionsView.js.map +1 -1
  121. package/dist/src/ui/components/JobsView.js +28 -5
  122. package/dist/src/ui/components/JobsView.js.map +1 -1
  123. package/dist/src/ui/components/KVStoreViewer.js +5 -5
  124. package/dist/src/ui/components/KVStoreViewer.js.map +1 -1
  125. package/dist/src/ui/components/KeyValueEditor.d.ts +15 -0
  126. package/dist/src/ui/components/KeyValueEditor.js +12 -0
  127. package/dist/src/ui/components/KeyValueEditor.js.map +1 -0
  128. package/dist/src/ui/components/NotificationViewer.d.ts +2 -11
  129. package/dist/src/ui/components/NotificationViewer.js +69 -15
  130. package/dist/src/ui/components/NotificationViewer.js.map +1 -1
  131. package/dist/src/ui/components/OdpSchemaView.d.ts +3 -0
  132. package/dist/src/ui/components/OdpSchemaView.js +58 -0
  133. package/dist/src/ui/components/OdpSchemaView.js.map +1 -0
  134. package/dist/src/ui/components/OpalToolsView.d.ts +9 -0
  135. package/dist/src/ui/components/OpalToolsView.js +399 -0
  136. package/dist/src/ui/components/OpalToolsView.js.map +1 -0
  137. package/dist/src/ui/components/ResponseViewer.d.ts +39 -0
  138. package/dist/src/ui/components/ResponseViewer.js +43 -0
  139. package/dist/src/ui/components/ResponseViewer.js.map +1 -0
  140. package/dist/src/ui/components/SecretsStoreViewer.js +3 -2
  141. package/dist/src/ui/components/SecretsStoreViewer.js.map +1 -1
  142. package/dist/src/ui/components/SettingsStoreViewer.js +3 -2
  143. package/dist/src/ui/components/SettingsStoreViewer.js.map +1 -1
  144. package/dist/src/ui/components/SourceEmittedDataPanel.d.ts +8 -0
  145. package/dist/src/ui/components/SourceEmittedDataPanel.js +103 -0
  146. package/dist/src/ui/components/SourceEmittedDataPanel.js.map +1 -0
  147. package/dist/src/ui/components/SourcesView.js +4 -8
  148. package/dist/src/ui/components/SourcesView.js.map +1 -1
  149. package/dist/src/ui/components/StoreViewer.js +2 -1
  150. package/dist/src/ui/components/StoreViewer.js.map +1 -1
  151. package/dist/src/ui/components/TabbedConsole.d.ts +11 -0
  152. package/dist/src/ui/components/TabbedConsole.js +134 -44
  153. package/dist/src/ui/components/TabbedConsole.js.map +1 -1
  154. package/dist/src/ui/components/ToolSettingsView.d.ts +7 -0
  155. package/dist/src/ui/components/ToolSettingsView.js +25 -0
  156. package/dist/src/ui/components/ToolSettingsView.js.map +1 -0
  157. package/dist/src/ui/components/common/EyeIcon.js +2 -1
  158. package/dist/src/ui/components/common/EyeIcon.js.map +1 -1
  159. package/dist/src/ui/hooks/useKeyValuePairs.d.ts +52 -0
  160. package/dist/src/ui/hooks/useKeyValuePairs.js +66 -0
  161. package/dist/src/ui/hooks/useKeyValuePairs.js.map +1 -0
  162. package/dist/src/ui/index.js +4 -2
  163. package/dist/src/ui/index.js.map +1 -1
  164. package/dist/src/ui/store/formStateSlice.d.ts +71 -0
  165. package/dist/src/ui/store/formStateSlice.js +159 -0
  166. package/dist/src/ui/store/formStateSlice.js.map +1 -0
  167. package/dist/src/ui/store/hooks.d.ts +6 -0
  168. package/dist/src/ui/store/hooks.js +8 -0
  169. package/dist/src/ui/store/hooks.js.map +1 -0
  170. package/dist/src/ui/store/index.d.ts +11 -0
  171. package/dist/src/ui/store/index.js +107 -0
  172. package/dist/src/ui/store/index.js.map +1 -0
  173. package/dist/src/ui/types/common.d.ts +33 -0
  174. package/dist/src/ui/types/common.js +6 -0
  175. package/dist/src/ui/types/common.js.map +1 -0
  176. package/package.json +17 -9
  177. package/dist/public/bundle.0a495807b6ef336cb500.js +0 -3
  178. package/dist/public/bundle.0a495807b6ef336cb500.js.map +0 -1
  179. package/dist/src/executor/SourceExecutor.d.ts +0 -32
  180. package/dist/src/executor/SourceExecutor.js +0 -163
  181. package/dist/src/executor/SourceExecutor.js.map +0 -1
  182. package/dist/src/local_engine/storage/SourceJobExecutionStore.d.ts +0 -25
  183. package/dist/src/local_engine/storage/SourceJobExecutionStore.js +0 -61
  184. package/dist/src/local_engine/storage/SourceJobExecutionStore.js.map +0 -1
  185. package/dist/src/ui/components/SourceDataViewer.d.ts +0 -8
  186. package/dist/src/ui/components/SourceDataViewer.js +0 -84
  187. package/dist/src/ui/components/SourceDataViewer.js.map +0 -1
  188. package/dist/src/ui/components/SourceJobsSection.d.ts +0 -8
  189. package/dist/src/ui/components/SourceJobsSection.js +0 -99
  190. package/dist/src/ui/components/SourceJobsSection.js.map +0 -1
  191. package/dist/src/ui/components/SourceLifecycleSection.d.ts +0 -7
  192. package/dist/src/ui/components/SourceLifecycleSection.js +0 -58
  193. package/dist/src/ui/components/SourceLifecycleSection.js.map +0 -1
  194. package/dist/src/ui/components/SourceWebhookEditor.d.ts +0 -8
  195. package/dist/src/ui/components/SourceWebhookEditor.js +0 -168
  196. package/dist/src/ui/components/SourceWebhookEditor.js.map +0 -1
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createOpalToolRoutes = createOpalToolRoutes;
7
+ const express_1 = __importDefault(require("express"));
8
+ const LogManager_1 = require("../../logging/LogManager");
9
+ const mockToolDataGenerator_1 = require("../mockToolDataGenerator");
10
+ const config_1 = require("../config");
11
+ function createOpalToolRoutes(app, configStore) {
12
+ const router = express_1.default.Router();
13
+ const logger = LogManager_1.LogManager.getInstance();
14
+ // GET /opal-tools - List all Opal tool functions
15
+ router.get('/', (req, res) => {
16
+ try {
17
+ const functions = app.manifest.functions || {};
18
+ const opalToolFunctions = [];
19
+ const protocol = req.secure ? 'https' : 'http';
20
+ const host = req.get('host') || `${config_1.config.server.host}:${config_1.config.server.port}`;
21
+ for (const [id, funcDef] of Object.entries(functions)) {
22
+ if (funcDef.opal_tool === true) {
23
+ // Build function URL (similar to functions.ts)
24
+ const isGlobal = funcDef.global === true;
25
+ const appId = app.manifest.meta.app_id;
26
+ let url;
27
+ if (isGlobal) {
28
+ // Global opal tools don't need installation - URL has no GUID
29
+ url = `${protocol}://${host}/functions/${appId}/${id}`;
30
+ }
31
+ else if (configStore && configStore.isInstalled()) {
32
+ const guid = configStore.getFunctionGuid(id);
33
+ url = `${protocol}://${host}/functions/${appId}/${id}/${guid}`;
34
+ }
35
+ else {
36
+ url = '';
37
+ }
38
+ opalToolFunctions.push({
39
+ id,
40
+ entry_point: funcDef.entry_point,
41
+ description: funcDef.description || '',
42
+ url,
43
+ global: isGlobal
44
+ });
45
+ }
46
+ }
47
+ res.json({ functions: opalToolFunctions });
48
+ }
49
+ catch (error) {
50
+ logger.error(LogManager_1.LogSource.System, LogManager_1.LogCategory.Function, `Failed to list Opal tool functions: ${error}`, { id: 'opalTools' });
51
+ res.status(500).json({
52
+ error: 'Failed to list Opal tool functions',
53
+ details: error instanceof Error ? error.message : String(error)
54
+ });
55
+ }
56
+ });
57
+ // POST /opal-tools/:functionId/tools/:toolName/generate-mock - Generate mock data for tool
58
+ // Note: Discovery is called directly from the UI to each function's /discovery endpoint
59
+ router.post('/:functionId/tools/:toolName/generate-mock', async (req, res) => {
60
+ const { toolName } = req.params;
61
+ const { parameters } = req.body; // Tool parameter definitions
62
+ try {
63
+ if (!parameters || !Array.isArray(parameters)) {
64
+ return res.status(400).json({
65
+ error: 'Tool parameters are required in request body'
66
+ });
67
+ }
68
+ const mockData = await (0, mockToolDataGenerator_1.generateMockToolParams)(parameters);
69
+ res.json({ data: mockData });
70
+ }
71
+ catch (error) {
72
+ logger.error(LogManager_1.LogSource.System, LogManager_1.LogCategory.Function, `Failed to generate mock data for ${toolName}: ${error}`, { id: 'opalTools' });
73
+ res.status(500).json({
74
+ error: 'Failed to generate mock data',
75
+ details: error instanceof Error ? error.message : String(error)
76
+ });
77
+ }
78
+ });
79
+ return router;
80
+ }
81
+ //# sourceMappingURL=opalTools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opalTools.js","sourceRoot":"","sources":["../../../../src/server/api/opalTools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import express from 'express';
2
+ import { App } from '../../types/app';
3
+ /**
4
+ * Create API routes for ODP schema operations
5
+ */
6
+ export declare function createSchemaRoutes(app: App): express.Router;
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.createSchemaRoutes = createSchemaRoutes;
40
+ const express_1 = __importDefault(require("express"));
41
+ const fs_1 = __importDefault(require("fs"));
42
+ const path_1 = __importDefault(require("path"));
43
+ const yaml = __importStar(require("js-yaml"));
44
+ /**
45
+ * Create API routes for ODP schema operations
46
+ */
47
+ function createSchemaRoutes(app) {
48
+ const router = express_1.default.Router();
49
+ /**
50
+ * GET /schema/odp - Discover and return parsed src/schema/*.yml files
51
+ */
52
+ router.get('/odp', (req, res) => {
53
+ try {
54
+ const schemaDir = path_1.default.join(app.path, 'src', 'schema');
55
+ if (!fs_1.default.existsSync(schemaDir)) {
56
+ return res.json({ schemas: [] });
57
+ }
58
+ const files = fs_1.default.readdirSync(schemaDir)
59
+ .filter(f => f.endsWith('.yml') || f.endsWith('.yaml'))
60
+ .sort();
61
+ const schemas = files.map(filename => {
62
+ const filePath = path_1.default.join(schemaDir, filename);
63
+ const content = fs_1.default.readFileSync(filePath, 'utf8');
64
+ try {
65
+ const parsed = yaml.load(content);
66
+ return {
67
+ filename,
68
+ filePath: `src/schema/${filename}`,
69
+ parsed,
70
+ raw: content,
71
+ error: null,
72
+ };
73
+ }
74
+ catch (parseError) {
75
+ return {
76
+ filename,
77
+ filePath: `src/schema/${filename}`,
78
+ parsed: null,
79
+ raw: content,
80
+ error: parseError instanceof Error ? parseError.message : String(parseError),
81
+ };
82
+ }
83
+ });
84
+ res.json({ schemas });
85
+ }
86
+ catch (error) {
87
+ res.status(500).json({
88
+ error: 'Failed to discover schema files',
89
+ details: error instanceof Error ? error.message : String(error),
90
+ });
91
+ }
92
+ });
93
+ return router;
94
+ }
95
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/server/api/schema.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,gDAmDC;AA5DD,sDAAqD;AACrD,4CAAoB;AACpB,gDAAwB;AACxB,8CAAgC;AAGhC;;GAEG;AACH,SAAgB,kBAAkB,CAAC,GAAQ;IACzC,MAAM,MAAM,GAAG,iBAAO,CAAC,MAAM,EAAE,CAAC;IAEhC;;OAEG;IACH,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAY,EAAE,GAAa,EAAE,EAAE;QACjD,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YAEvD,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC9B,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;YACnC,CAAC;YAED,MAAM,KAAK,GAAG,YAAE,CAAC,WAAW,CAAC,SAAS,CAAC;iBACpC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;iBACtD,IAAI,EAAE,CAAC;YAEV,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;gBACnC,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;gBAChD,MAAM,OAAO,GAAG,YAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBAClD,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAwB,CAAC;oBACzD,OAAO;wBACL,QAAQ;wBACR,QAAQ,EAAE,cAAc,QAAQ,EAAE;wBAClC,MAAM;wBACN,GAAG,EAAE,OAAO;wBACZ,KAAK,EAAE,IAAI;qBACZ,CAAC;gBACJ,CAAC;gBAAC,OAAO,UAAU,EAAE,CAAC;oBACpB,OAAO;wBACL,QAAQ;wBACR,QAAQ,EAAE,cAAc,QAAQ,EAAE;wBAClC,MAAM,EAAE,IAAI;wBACZ,GAAG,EAAE,OAAO;wBACZ,KAAK,EAAE,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;qBAC7E,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QACxB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAE,iCAAiC;gBACxC,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAChE,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,7 +1,6 @@
1
1
  import express from 'express';
2
2
  import { App } from '../../types/app';
3
- import { LocalConfigStore } from '../../local_engine/storage/LocalConfigStore';
4
3
  /**
5
4
  * Create API routes for source testing
6
5
  */
7
- export declare function createSourceRoutes(app: App, appRootDir: string, configStore: LocalConfigStore): express.Router;
6
+ export declare function createSourceRoutes(app: App, appRootDir: string): express.Router;
@@ -6,11 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.createSourceRoutes = createSourceRoutes;
7
7
  const express_1 = __importDefault(require("express"));
8
8
  const LogManager_1 = require("../../logging/LogManager");
9
- const SourceExecutor_1 = require("../../executor/SourceExecutor");
10
9
  const local_engine_client_1 = require("../../local_engine/local-engine-client");
11
- const mockDataGenerator_1 = require("../mockDataGenerator");
12
10
  const SourceDataStore_1 = require("../../local_engine/storage/SourceDataStore");
13
- const SourceJobExecutionStore_1 = require("../../local_engine/storage/SourceJobExecutionStore");
14
11
  const config_1 = require("../config");
15
12
  const logger = LogManager_1.LogManager.getInstance();
16
13
  /**
@@ -28,33 +25,21 @@ function createAppConfig(app) {
28
25
  /**
29
26
  * Create API routes for source testing
30
27
  */
31
- function createSourceRoutes(app, appRootDir, configStore) {
28
+ function createSourceRoutes(app, appRootDir) {
32
29
  const router = express_1.default.Router();
33
- const sourceExecutor = new SourceExecutor_1.SourceExecutor(app, configStore);
34
30
  const localEngineClient = local_engine_client_1.LocalEngineClient.getInstance();
35
- const sourceDataStore = new SourceDataStore_1.SourceDataStore(appRootDir);
36
- const sourceJobExecutionStore = new SourceJobExecutionStore_1.SourceJobExecutionStore(appRootDir);
31
+ const sourceDataStore = SourceDataStore_1.SourceDataStore.getInstance(appRootDir);
37
32
  /**
38
33
  * GET /sources - List all sources from app manifest
39
34
  */
40
35
  router.get('/', (req, res) => {
41
36
  try {
42
- const protocol = req.protocol;
43
- const host = req.get('host') || `${config_1.config.server.host}:${config_1.config.server.port}`;
44
37
  const sources = app.manifest.sources || {};
45
- const sourceList = Object.keys(sources).map(id => {
46
- // Get or generate GUID for this source
47
- const guid = configStore.getSourceGuid(id);
48
- const webhookUrl = `${protocol}://${host}/sources/${app.manifest.meta.app_id}/${id}/${guid}`;
49
- return {
50
- id,
51
- description: sources[id].description,
52
- entry_point: sources[id].function?.entry_point,
53
- schema: sources[id].schema,
54
- jobs: sources[id].jobs,
55
- webhookUrl
56
- };
57
- });
38
+ const sourceList = Object.keys(sources).map(id => ({
39
+ id,
40
+ description: sources[id].description,
41
+ schema: sources[id].schema,
42
+ }));
58
43
  res.json({ sources: sourceList });
59
44
  }
60
45
  catch (error) {
@@ -94,257 +79,16 @@ function createSourceRoutes(app, appRootDir, configStore) {
94
79
  }
95
80
  });
96
81
  /**
97
- * POST /sources/:sourceId/create - Trigger onSourceCreate lifecycle
98
- */
99
- router.post('/:sourceId/create', async (req, res) => {
100
- try {
101
- const { sourceId } = req.params;
102
- const sources = app.manifest.sources || {};
103
- if (!sources[sourceId]) {
104
- return res.status(404).json({ error: `Source ${sourceId} not found` });
105
- }
106
- const result = await sourceExecutor.executeSourceCreate(sourceId);
107
- res.json({ result });
108
- }
109
- catch (error) {
110
- const sourceId = req.params.sourceId;
111
- logger.error(LogManager_1.LogSource.System, LogManager_1.LogCategory.Source, 'Failed to execute source create', {
112
- id: sourceId,
113
- operation: 'create',
114
- error
115
- });
116
- res.status(500).json({
117
- error: 'Failed to execute source create',
118
- details: error instanceof Error ? error.message : String(error)
119
- });
120
- }
121
- });
122
- /**
123
- * POST /sources/:sourceId/update - Trigger onSourceUpdate lifecycle
124
- */
125
- router.post('/:sourceId/update', async (req, res) => {
126
- try {
127
- const { sourceId } = req.params;
128
- const sources = app.manifest.sources || {};
129
- if (!sources[sourceId]) {
130
- return res.status(404).json({ error: `Source ${sourceId} not found` });
131
- }
132
- const result = await sourceExecutor.executeSourceUpdate(sourceId);
133
- res.json({ result });
134
- }
135
- catch (error) {
136
- const sourceId = req.params.sourceId;
137
- logger.error(LogManager_1.LogSource.System, LogManager_1.LogCategory.Source, 'Failed to execute source update', {
138
- id: sourceId,
139
- operation: 'update',
140
- error
141
- });
142
- res.status(500).json({
143
- error: 'Failed to execute source update',
144
- details: error instanceof Error ? error.message : String(error)
145
- });
146
- }
147
- });
148
- /**
149
- * POST /sources/:sourceId/delete - Trigger onSourceDelete lifecycle
150
- */
151
- router.post('/:sourceId/delete', async (req, res) => {
152
- try {
153
- const { sourceId } = req.params;
154
- const sources = app.manifest.sources || {};
155
- if (!sources[sourceId]) {
156
- return res.status(404).json({ error: `Source ${sourceId} not found` });
157
- }
158
- const result = await sourceExecutor.executeSourceDelete(sourceId);
159
- res.json({ result });
160
- }
161
- catch (error) {
162
- const sourceId = req.params.sourceId;
163
- logger.error(LogManager_1.LogSource.System, LogManager_1.LogCategory.Source, 'Failed to execute source delete', {
164
- id: sourceId,
165
- operation: 'delete',
166
- error
167
- });
168
- res.status(500).json({
169
- error: 'Failed to execute source delete',
170
- details: error instanceof Error ? error.message : String(error)
171
- });
172
- }
173
- });
174
- /**
175
- * POST /sources/:sourceId/enable - Trigger onSourceEnable lifecycle
176
- */
177
- router.post('/:sourceId/enable', async (req, res) => {
178
- try {
179
- const { sourceId } = req.params;
180
- const sources = app.manifest.sources || {};
181
- if (!sources[sourceId]) {
182
- return res.status(404).json({ error: `Source ${sourceId} not found` });
183
- }
184
- const result = await sourceExecutor.executeSourceEnable(sourceId);
185
- res.json({ result });
186
- }
187
- catch (error) {
188
- const sourceId = req.params.sourceId;
189
- logger.error(LogManager_1.LogSource.System, LogManager_1.LogCategory.Source, 'Failed to execute source enable', {
190
- id: sourceId,
191
- operation: 'enable',
192
- error
193
- });
194
- res.status(500).json({
195
- error: 'Failed to execute source enable',
196
- details: error instanceof Error ? error.message : String(error)
197
- });
198
- }
199
- });
200
- /**
201
- * POST /sources/:sourceId/pause - Trigger onSourcePause lifecycle
202
- */
203
- router.post('/:sourceId/pause', async (req, res) => {
204
- try {
205
- const { sourceId } = req.params;
206
- const sources = app.manifest.sources || {};
207
- if (!sources[sourceId]) {
208
- return res.status(404).json({ error: `Source ${sourceId} not found` });
209
- }
210
- const result = await sourceExecutor.executeSourcePause(sourceId);
211
- res.json({ result });
212
- }
213
- catch (error) {
214
- const sourceId = req.params.sourceId;
215
- logger.error(LogManager_1.LogSource.System, LogManager_1.LogCategory.Source, 'Failed to execute source pause', {
216
- id: sourceId,
217
- operation: 'pause',
218
- error
219
- });
220
- res.status(500).json({
221
- error: 'Failed to execute source pause',
222
- details: error instanceof Error ? error.message : String(error)
223
- });
224
- }
225
- });
226
- /**
227
- * POST /sources/:sourceId/jobs/:jobId - Execute source job
82
+ * GET /sources/data - Retrieve all emitted source data from SourceDataStore
228
83
  */
229
- router.post('/:sourceId/jobs/:jobId', async (req, res) => {
84
+ router.get('/data', (req, res) => {
230
85
  try {
231
- const { sourceId, jobId } = req.params;
232
- const { parameters } = req.body;
233
- const sources = app.manifest.sources || {};
234
- if (!sources[sourceId]) {
235
- return res.status(404).json({ error: `Source ${sourceId} not found` });
236
- }
237
- const jobs = sources[sourceId].jobs || {};
238
- if (!jobs[jobId]) {
239
- return res.status(404).json({ error: `Job ${jobId} not found in source ${sourceId}` });
240
- }
241
- const result = await sourceExecutor.executeSourceJob({
242
- sourceId,
243
- jobId,
244
- parameters
245
- });
246
- res.json({ result });
247
- }
248
- catch (error) {
249
- const { sourceId, jobId } = req.params;
250
- logger.error(LogManager_1.LogSource.System, LogManager_1.LogCategory.Source, 'Failed to execute source job', {
251
- id: sourceId,
252
- operation: 'job',
253
- error
254
- });
255
- res.status(500).json({
256
- error: 'Failed to execute source job',
257
- details: error instanceof Error ? error.message : String(error)
258
- });
259
- }
260
- });
261
- /**
262
- * GET /sources/:sourceId/jobs/:jobId/executions - Get job execution history
263
- */
264
- router.get('/:sourceId/jobs/:jobId/executions', (req, res) => {
265
- try {
266
- const { sourceId, jobId } = req.params;
267
- const executions = sourceJobExecutionStore.getExecutions(sourceId, jobId);
268
- res.json({ executions });
269
- }
270
- catch (error) {
271
- logger.error(LogManager_1.LogSource.System, LogManager_1.LogCategory.Source, 'Failed to fetch job executions', {
272
- id: req.params.sourceId,
273
- operation: 'job-executions',
274
- error
275
- });
276
- res.status(500).json({
277
- error: 'Failed to fetch job executions',
278
- details: error instanceof Error ? error.message : String(error)
279
- });
280
- }
281
- });
282
- /**
283
- * GET /sources/:sourceId/job-executions - Get all job executions for source
284
- */
285
- router.get('/:sourceId/job-executions', (req, res) => {
286
- try {
287
- const { sourceId } = req.params;
288
- const executions = sourceJobExecutionStore.getExecutions(sourceId);
289
- res.json({ executions });
290
- }
291
- catch (error) {
292
- logger.error(LogManager_1.LogSource.System, LogManager_1.LogCategory.Source, 'Failed to fetch all job executions', {
293
- id: req.params.sourceId,
294
- operation: 'all-job-executions',
295
- error
296
- });
297
- res.status(500).json({
298
- error: 'Failed to fetch all job executions',
299
- details: error instanceof Error ? error.message : String(error)
300
- });
301
- }
302
- });
303
- /**
304
- * POST /sources/:sourceId/generate-mock - Generate mock webhook data
305
- */
306
- router.post('/:sourceId/generate-mock', async (req, res) => {
307
- try {
308
- const { sourceId } = req.params;
309
- const sources = app.manifest.sources || {};
310
- if (!sources[sourceId]) {
311
- return res.status(404).json({ error: `Source ${sourceId} not found` });
312
- }
313
- // Get schema via IPC
314
- const schema = await localEngineClient.executeSourceSchema(sourceId, createAppConfig(app));
315
- // Reuse destination mock generator
316
- const mockBatch = (0, mockDataGenerator_1.generateMockBatch)(schema, 1);
317
- // Extract just the items for webhook payload
318
- res.json({ data: mockBatch.items[0] });
319
- }
320
- catch (error) {
321
- const sourceId = req.params.sourceId;
322
- logger.error(LogManager_1.LogSource.System, LogManager_1.LogCategory.Source, 'Failed to generate mock data', {
323
- id: sourceId,
324
- operation: 'generate-mock',
325
- error
326
- });
327
- res.status(500).json({
328
- error: 'Failed to generate mock data',
329
- details: error instanceof Error ? error.message : String(error)
330
- });
331
- }
332
- });
333
- /**
334
- * GET /sources/:sourceId/data - Retrieve pushed data from SourceDataStore
335
- * Query params: limit (number), context ('webhook' | 'job')
336
- */
337
- router.get('/:sourceId/data', (req, res) => {
338
- try {
339
- const { sourceId } = req.params;
340
- const limit = req.query.limit ? parseInt(req.query.limit, 10) : undefined;
341
- const context = req.query.context;
342
- const data = sourceDataStore.getData(sourceId, context, limit);
343
- res.json({ data });
86
+ const { entries, totalEmitted } = sourceDataStore.getData();
87
+ res.json({ entries, totalEmitted });
344
88
  }
345
89
  catch (error) {
346
90
  logger.error(LogManager_1.LogSource.System, LogManager_1.LogCategory.Source, 'Failed to fetch source data', {
347
- id: req.params.sourceId,
91
+ id: 'all',
348
92
  operation: 'data',
349
93
  error
350
94
  });
@@ -355,19 +99,16 @@ function createSourceRoutes(app, appRootDir, configStore) {
355
99
  }
356
100
  });
357
101
  /**
358
- * DELETE /sources/:sourceId/data - Clear pushed data
359
- * Query params: context ('webhook' | 'job') - optional, clears all if not specified
102
+ * DELETE /sources/data - Clear all emitted source data
360
103
  */
361
- router.delete('/:sourceId/data', (req, res) => {
104
+ router.delete('/data', (req, res) => {
362
105
  try {
363
- const { sourceId } = req.params;
364
- const context = req.query.context;
365
- sourceDataStore.clear(sourceId, context);
106
+ sourceDataStore.clear();
366
107
  res.json({ success: true });
367
108
  }
368
109
  catch (error) {
369
110
  logger.error(LogManager_1.LogSource.System, LogManager_1.LogCategory.Source, 'Failed to clear source data', {
370
- id: req.params.sourceId,
111
+ id: 'all',
371
112
  operation: 'clear-data',
372
113
  error
373
114
  });
@@ -1 +1 @@
1
- {"version":3,"file":"sources.js","sourceRoot":"","sources":["../../../../src/server/api/sources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sources.js","sourceRoot":"","sources":["../../../../src/server/api/sources.ts"],"names":[],"mappings":"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"}