@optimizely/ocp-local-env 1.0.0-beta.13 → 1.0.0-beta.15
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 +21 -0
- package/dist/package.json +6 -1
- package/dist/public/bundle.9ecff4861dc6af9af49a.js +3 -0
- package/dist/public/bundle.9ecff4861dc6af9af49a.js.map +1 -0
- package/dist/public/index.html +1 -1
- package/dist/src/cli.js +2 -2
- package/dist/src/cli.js.map +1 -1
- package/dist/src/executor/JobExecutor.js +0 -17
- package/dist/src/executor/JobExecutor.js.map +1 -1
- package/dist/src/local_engine/LocalNotifier.d.ts +2 -0
- package/dist/src/local_engine/LocalNotifier.js +7 -0
- package/dist/src/local_engine/LocalNotifier.js.map +1 -1
- package/dist/src/local_engine/LocalSourceApi.d.ts +40 -0
- package/dist/src/local_engine/LocalSourceApi.js +69 -0
- package/dist/src/local_engine/LocalSourceApi.js.map +1 -0
- package/dist/src/local_engine/local-engine-child-base.d.ts +0 -12
- package/dist/src/local_engine/local-engine-child-base.js +0 -127
- package/dist/src/local_engine/local-engine-child-base.js.map +1 -1
- package/dist/src/local_engine/local-engine-client.d.ts +19 -29
- package/dist/src/local_engine/local-engine-client.js +41 -94
- package/dist/src/local_engine/local-engine-client.js.map +1 -1
- package/dist/src/local_engine/local-engine-types.d.ts +13 -50
- package/dist/src/local_engine/local-engine-unified.d.ts +6 -13
- package/dist/src/local_engine/local-engine-unified.js +51 -217
- package/dist/src/local_engine/local-engine-unified.js.map +1 -1
- package/dist/src/local_engine/localSDKConfig.d.ts +6 -0
- package/dist/src/local_engine/localSDKConfig.js +23 -1
- package/dist/src/local_engine/localSDKConfig.js.map +1 -1
- package/dist/src/local_engine/storage/LocalConfigStore.d.ts +0 -17
- package/dist/src/local_engine/storage/LocalConfigStore.js +1 -38
- package/dist/src/local_engine/storage/LocalConfigStore.js.map +1 -1
- package/dist/src/local_engine/storage/SourceDataStore.d.ts +16 -14
- package/dist/src/local_engine/storage/SourceDataStore.js +57 -57
- package/dist/src/local_engine/storage/SourceDataStore.js.map +1 -1
- package/dist/src/server/api/destinations.js +1 -1
- package/dist/src/server/api/destinations.js.map +1 -1
- package/dist/src/server/api/opalTools.js +1 -1
- package/dist/src/server/api/opalTools.js.map +1 -1
- package/dist/src/server/api/sources.d.ts +1 -2
- package/dist/src/server/api/sources.js +16 -275
- package/dist/src/server/api/sources.js.map +1 -1
- package/dist/src/server/api/v1.js +43 -0
- package/dist/src/server/api/v1.js.map +1 -1
- package/dist/src/server/api.d.ts +4 -0
- package/dist/src/server/api.js +105 -8
- package/dist/src/server/api.js.map +1 -1
- package/dist/src/server/browserFocus.d.ts +5 -0
- package/dist/src/server/browserFocus.js +39 -0
- package/dist/src/server/browserFocus.js.map +1 -0
- package/dist/src/server/config.d.ts +3 -0
- package/dist/src/server/config.js +7 -0
- package/dist/src/server/config.js.map +1 -1
- package/dist/src/server/mockDataGenerator.d.ts +1 -1
- package/dist/src/server/mockDataGenerator.js +75 -33
- package/dist/src/server/mockDataGenerator.js.map +1 -1
- package/dist/src/server/mockToolDataGenerator.d.ts +1 -1
- package/dist/src/server/mockToolDataGenerator.js +138 -96
- package/dist/src/server/mockToolDataGenerator.js.map +1 -1
- package/dist/src/server.js +97 -155
- package/dist/src/server.js.map +1 -1
- package/dist/src/types/app.d.ts +0 -1
- package/dist/src/ui/components/App.js +165 -44
- package/dist/src/ui/components/App.js.map +1 -1
- package/dist/src/ui/components/FunctionsView.d.ts +1 -0
- package/dist/src/ui/components/FunctionsView.js +32 -25
- package/dist/src/ui/components/FunctionsView.js.map +1 -1
- package/dist/src/ui/components/JobsView.js +1 -1
- package/dist/src/ui/components/JobsView.js.map +1 -1
- package/dist/src/ui/components/NotificationViewer.d.ts +2 -11
- package/dist/src/ui/components/NotificationViewer.js +62 -9
- package/dist/src/ui/components/NotificationViewer.js.map +1 -1
- package/dist/src/ui/components/OpalToolsView.d.ts +1 -0
- package/dist/src/ui/components/OpalToolsView.js +9 -3
- package/dist/src/ui/components/OpalToolsView.js.map +1 -1
- package/dist/src/ui/components/SourceEmittedDataPanel.d.ts +8 -0
- package/dist/src/ui/components/SourceEmittedDataPanel.js +103 -0
- package/dist/src/ui/components/SourceEmittedDataPanel.js.map +1 -0
- package/dist/src/ui/components/SourcesView.js +4 -8
- package/dist/src/ui/components/SourcesView.js.map +1 -1
- package/dist/src/ui/components/StoreViewer.js +1 -1
- package/dist/src/ui/components/StoreViewer.js.map +1 -1
- package/dist/src/ui/components/TabbedConsole.d.ts +4 -0
- package/dist/src/ui/components/TabbedConsole.js +54 -6
- package/dist/src/ui/components/TabbedConsole.js.map +1 -1
- package/dist/src/ui/store/formStateSlice.d.ts +1 -1
- package/dist/src/ui/store/formStateSlice.js +1 -1
- package/package.json +6 -1
- package/dist/public/bundle.722850005313c74f911a.js +0 -3
- package/dist/public/bundle.722850005313c74f911a.js.map +0 -1
- package/dist/src/executor/SourceExecutor.d.ts +0 -32
- package/dist/src/executor/SourceExecutor.js +0 -163
- package/dist/src/executor/SourceExecutor.js.map +0 -1
- package/dist/src/local_engine/storage/SourceJobExecutionStore.d.ts +0 -25
- package/dist/src/local_engine/storage/SourceJobExecutionStore.js +0 -61
- package/dist/src/local_engine/storage/SourceJobExecutionStore.js.map +0 -1
- package/dist/src/ui/components/SourceDataViewer.d.ts +0 -8
- package/dist/src/ui/components/SourceDataViewer.js +0 -84
- package/dist/src/ui/components/SourceDataViewer.js.map +0 -1
- package/dist/src/ui/components/SourceJobsSection.d.ts +0 -8
- package/dist/src/ui/components/SourceJobsSection.js +0 -99
- package/dist/src/ui/components/SourceJobsSection.js.map +0 -1
- package/dist/src/ui/components/SourceLifecycleSection.d.ts +0 -7
- package/dist/src/ui/components/SourceLifecycleSection.js +0 -58
- package/dist/src/ui/components/SourceLifecycleSection.js.map +0 -1
- package/dist/src/ui/components/SourceWebhookEditor.d.ts +0 -8
- package/dist/src/ui/components/SourceWebhookEditor.js +0 -181
- package/dist/src/ui/components/SourceWebhookEditor.js.map +0 -1
- /package/dist/public/{bundle.722850005313c74f911a.js.LICENSE.txt → bundle.9ecff4861dc6af9af49a.js.LICENSE.txt} +0 -0
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { App } from '../types/app';
|
|
2
|
-
import { SourceWebhookRequest, SourceJobRequest } from '../local_engine/local-engine-types';
|
|
3
|
-
import { LocalConfigStore } from '../local_engine/storage/LocalConfigStore';
|
|
4
|
-
export interface SourceWebhookResponse {
|
|
5
|
-
status: number;
|
|
6
|
-
headers: [string, string][];
|
|
7
|
-
body: any;
|
|
8
|
-
}
|
|
9
|
-
export interface SourceCallbackResponse {
|
|
10
|
-
success: boolean;
|
|
11
|
-
message?: string;
|
|
12
|
-
}
|
|
13
|
-
export interface SourceJobResult {
|
|
14
|
-
success: boolean;
|
|
15
|
-
logs: string[];
|
|
16
|
-
executionTime: number;
|
|
17
|
-
error?: string;
|
|
18
|
-
result?: any;
|
|
19
|
-
}
|
|
20
|
-
export declare class SourceExecutor {
|
|
21
|
-
private app;
|
|
22
|
-
private localEngineClient;
|
|
23
|
-
private configStore;
|
|
24
|
-
constructor(app: App, configStore: LocalConfigStore);
|
|
25
|
-
executeSourceWebhook(request: SourceWebhookRequest): Promise<SourceWebhookResponse>;
|
|
26
|
-
executeSourceCreate(sourceId: string): Promise<SourceCallbackResponse>;
|
|
27
|
-
executeSourceUpdate(sourceId: string): Promise<SourceCallbackResponse>;
|
|
28
|
-
executeSourceDelete(sourceId: string): Promise<SourceCallbackResponse>;
|
|
29
|
-
executeSourceEnable(sourceId: string): Promise<SourceCallbackResponse>;
|
|
30
|
-
executeSourcePause(sourceId: string): Promise<SourceCallbackResponse>;
|
|
31
|
-
executeSourceJob(request: SourceJobRequest): Promise<SourceJobResult>;
|
|
32
|
-
}
|
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SourceExecutor = void 0;
|
|
4
|
-
const local_engine_client_1 = require("../local_engine/local-engine-client");
|
|
5
|
-
const LogManager_1 = require("../logging/LogManager");
|
|
6
|
-
const config_1 = require("../server/config");
|
|
7
|
-
const logger = LogManager_1.LogManager.getInstance();
|
|
8
|
-
/**
|
|
9
|
-
* Create app configuration object for IPC communication
|
|
10
|
-
*/
|
|
11
|
-
function createAppConfig(app) {
|
|
12
|
-
return {
|
|
13
|
-
manifest: app.manifest,
|
|
14
|
-
isBuilt: true,
|
|
15
|
-
isValid: true,
|
|
16
|
-
path: app.path,
|
|
17
|
-
baseUrl: `http://${config_1.config.server.host}:${config_1.config.server.port}`
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
class SourceExecutor {
|
|
21
|
-
constructor(app, configStore) {
|
|
22
|
-
this.app = app;
|
|
23
|
-
this.localEngineClient = local_engine_client_1.LocalEngineClient.getInstance();
|
|
24
|
-
this.configStore = configStore;
|
|
25
|
-
}
|
|
26
|
-
async executeSourceWebhook(request) {
|
|
27
|
-
try {
|
|
28
|
-
logger.logSourceExecution(request.sourceId, 'webhook', 'started', {
|
|
29
|
-
method: request.method,
|
|
30
|
-
path: request.path
|
|
31
|
-
});
|
|
32
|
-
const source = this.app.manifest.sources?.[request.sourceId];
|
|
33
|
-
if (!source) {
|
|
34
|
-
throw new Error(`Source ${request.sourceId} not found in manifest`);
|
|
35
|
-
}
|
|
36
|
-
const result = await this.localEngineClient.executeSourceWebhook(request, createAppConfig(this.app));
|
|
37
|
-
logger.logSourceExecution(request.sourceId, 'webhook', 'success', {
|
|
38
|
-
status: result.status
|
|
39
|
-
});
|
|
40
|
-
return result;
|
|
41
|
-
}
|
|
42
|
-
catch (error) {
|
|
43
|
-
logger.logSourceExecution(request.sourceId, 'webhook', 'error', { error });
|
|
44
|
-
throw error;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
async executeSourceCreate(sourceId) {
|
|
48
|
-
try {
|
|
49
|
-
logger.logSourceExecution(sourceId, 'create', 'started');
|
|
50
|
-
const source = this.app.manifest.sources?.[sourceId];
|
|
51
|
-
if (!source) {
|
|
52
|
-
throw new Error(`Source ${sourceId} not found in manifest`);
|
|
53
|
-
}
|
|
54
|
-
// Retrieve GUID from config store
|
|
55
|
-
const guid = this.configStore.getSourceGuid(sourceId);
|
|
56
|
-
const result = await this.localEngineClient.executeSourceCreate(sourceId, guid, createAppConfig(this.app));
|
|
57
|
-
logger.logSourceExecution(sourceId, 'create', 'success', { result });
|
|
58
|
-
return result;
|
|
59
|
-
}
|
|
60
|
-
catch (error) {
|
|
61
|
-
logger.logSourceExecution(sourceId, 'create', 'error', { error });
|
|
62
|
-
throw error;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
async executeSourceUpdate(sourceId) {
|
|
66
|
-
try {
|
|
67
|
-
logger.logSourceExecution(sourceId, 'update', 'started');
|
|
68
|
-
const source = this.app.manifest.sources?.[sourceId];
|
|
69
|
-
if (!source) {
|
|
70
|
-
throw new Error(`Source ${sourceId} not found in manifest`);
|
|
71
|
-
}
|
|
72
|
-
// Retrieve GUID from config store
|
|
73
|
-
const guid = this.configStore.getSourceGuid(sourceId);
|
|
74
|
-
const result = await this.localEngineClient.executeSourceUpdate(sourceId, guid, createAppConfig(this.app));
|
|
75
|
-
logger.logSourceExecution(sourceId, 'update', 'success', { result });
|
|
76
|
-
return result;
|
|
77
|
-
}
|
|
78
|
-
catch (error) {
|
|
79
|
-
logger.logSourceExecution(sourceId, 'update', 'error', { error });
|
|
80
|
-
throw error;
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
async executeSourceDelete(sourceId) {
|
|
84
|
-
try {
|
|
85
|
-
logger.logSourceExecution(sourceId, 'delete', 'started');
|
|
86
|
-
const source = this.app.manifest.sources?.[sourceId];
|
|
87
|
-
if (!source) {
|
|
88
|
-
throw new Error(`Source ${sourceId} not found in manifest`);
|
|
89
|
-
}
|
|
90
|
-
// Retrieve GUID from config store
|
|
91
|
-
const guid = this.configStore.getSourceGuid(sourceId);
|
|
92
|
-
const result = await this.localEngineClient.executeSourceDelete(sourceId, guid, createAppConfig(this.app));
|
|
93
|
-
logger.logSourceExecution(sourceId, 'delete', 'success', { result });
|
|
94
|
-
return result;
|
|
95
|
-
}
|
|
96
|
-
catch (error) {
|
|
97
|
-
logger.logSourceExecution(sourceId, 'delete', 'error', { error });
|
|
98
|
-
throw error;
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
async executeSourceEnable(sourceId) {
|
|
102
|
-
try {
|
|
103
|
-
logger.logSourceExecution(sourceId, 'enable', 'started');
|
|
104
|
-
const source = this.app.manifest.sources?.[sourceId];
|
|
105
|
-
if (!source) {
|
|
106
|
-
throw new Error(`Source ${sourceId} not found in manifest`);
|
|
107
|
-
}
|
|
108
|
-
// Retrieve GUID from config store
|
|
109
|
-
const guid = this.configStore.getSourceGuid(sourceId);
|
|
110
|
-
const result = await this.localEngineClient.executeSourceEnable(sourceId, guid, createAppConfig(this.app));
|
|
111
|
-
logger.logSourceExecution(sourceId, 'enable', 'success', { result });
|
|
112
|
-
return result;
|
|
113
|
-
}
|
|
114
|
-
catch (error) {
|
|
115
|
-
logger.logSourceExecution(sourceId, 'enable', 'error', { error });
|
|
116
|
-
throw error;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
async executeSourcePause(sourceId) {
|
|
120
|
-
try {
|
|
121
|
-
logger.logSourceExecution(sourceId, 'pause', 'started');
|
|
122
|
-
const source = this.app.manifest.sources?.[sourceId];
|
|
123
|
-
if (!source) {
|
|
124
|
-
throw new Error(`Source ${sourceId} not found in manifest`);
|
|
125
|
-
}
|
|
126
|
-
// Retrieve GUID from config store
|
|
127
|
-
const guid = this.configStore.getSourceGuid(sourceId);
|
|
128
|
-
const result = await this.localEngineClient.executeSourcePause(sourceId, guid, createAppConfig(this.app));
|
|
129
|
-
logger.logSourceExecution(sourceId, 'pause', 'success', { result });
|
|
130
|
-
return result;
|
|
131
|
-
}
|
|
132
|
-
catch (error) {
|
|
133
|
-
logger.logSourceExecution(sourceId, 'pause', 'error', { error });
|
|
134
|
-
throw error;
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
async executeSourceJob(request) {
|
|
138
|
-
try {
|
|
139
|
-
logger.logSourceExecution(request.sourceId, 'job', 'started', {
|
|
140
|
-
jobId: request.jobId
|
|
141
|
-
});
|
|
142
|
-
const source = this.app.manifest.sources?.[request.sourceId];
|
|
143
|
-
if (!source) {
|
|
144
|
-
throw new Error(`Source ${request.sourceId} not found in manifest`);
|
|
145
|
-
}
|
|
146
|
-
const result = await this.localEngineClient.executeSourceJob(request, createAppConfig(this.app));
|
|
147
|
-
logger.logSourceExecution(request.sourceId, 'job', 'success', {
|
|
148
|
-
jobId: request.jobId,
|
|
149
|
-
executionTime: result.executionTime
|
|
150
|
-
});
|
|
151
|
-
return result;
|
|
152
|
-
}
|
|
153
|
-
catch (error) {
|
|
154
|
-
logger.logSourceExecution(request.sourceId, 'job', 'error', {
|
|
155
|
-
jobId: request.jobId,
|
|
156
|
-
error
|
|
157
|
-
});
|
|
158
|
-
throw error;
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
exports.SourceExecutor = SourceExecutor;
|
|
163
|
-
//# sourceMappingURL=SourceExecutor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SourceExecutor.js","sourceRoot":"","sources":["../../../src/executor/SourceExecutor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
export interface SourceJobExecution {
|
|
2
|
-
jobId: string;
|
|
3
|
-
timestamp: number;
|
|
4
|
-
success: boolean;
|
|
5
|
-
logs: string[];
|
|
6
|
-
executionTime: number;
|
|
7
|
-
error?: string;
|
|
8
|
-
result?: any;
|
|
9
|
-
}
|
|
10
|
-
export interface SourceJobExecutionFile {
|
|
11
|
-
sourceId: string;
|
|
12
|
-
executions: SourceJobExecution[];
|
|
13
|
-
}
|
|
14
|
-
export declare class SourceJobExecutionStore {
|
|
15
|
-
private storageDir;
|
|
16
|
-
private maxExecutions;
|
|
17
|
-
constructor(appRootDir: string);
|
|
18
|
-
private ensureStorageDir;
|
|
19
|
-
private getFilePath;
|
|
20
|
-
private readFile;
|
|
21
|
-
private writeFile;
|
|
22
|
-
addExecution(sourceId: string, execution: SourceJobExecution): void;
|
|
23
|
-
getExecutions(sourceId: string, jobId?: string): SourceJobExecution[];
|
|
24
|
-
clear(sourceId: string): void;
|
|
25
|
-
}
|
|
@@ -1,61 +0,0 @@
|
|
|
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.SourceJobExecutionStore = void 0;
|
|
7
|
-
const path_1 = __importDefault(require("path"));
|
|
8
|
-
const fs_1 = __importDefault(require("fs"));
|
|
9
|
-
class SourceJobExecutionStore {
|
|
10
|
-
constructor(appRootDir) {
|
|
11
|
-
this.maxExecutions = 100;
|
|
12
|
-
this.storageDir = path_1.default.join(appRootDir, 'storage', 'source-job-executions');
|
|
13
|
-
this.ensureStorageDir();
|
|
14
|
-
}
|
|
15
|
-
ensureStorageDir() {
|
|
16
|
-
if (!fs_1.default.existsSync(this.storageDir)) {
|
|
17
|
-
fs_1.default.mkdirSync(this.storageDir, { recursive: true });
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
getFilePath(sourceId) {
|
|
21
|
-
return path_1.default.join(this.storageDir, `${sourceId}.json`);
|
|
22
|
-
}
|
|
23
|
-
readFile(sourceId) {
|
|
24
|
-
const filePath = this.getFilePath(sourceId);
|
|
25
|
-
if (!fs_1.default.existsSync(filePath)) {
|
|
26
|
-
return { sourceId, executions: [] };
|
|
27
|
-
}
|
|
28
|
-
const content = fs_1.default.readFileSync(filePath, 'utf-8');
|
|
29
|
-
return JSON.parse(content);
|
|
30
|
-
}
|
|
31
|
-
writeFile(data) {
|
|
32
|
-
const filePath = this.getFilePath(data.sourceId);
|
|
33
|
-
fs_1.default.writeFileSync(filePath, JSON.stringify(data, null, 2));
|
|
34
|
-
}
|
|
35
|
-
addExecution(sourceId, execution) {
|
|
36
|
-
const file = this.readFile(sourceId);
|
|
37
|
-
file.executions.push(execution);
|
|
38
|
-
// Prune to keep only last maxExecutions
|
|
39
|
-
if (file.executions.length > this.maxExecutions) {
|
|
40
|
-
file.executions = file.executions.slice(-this.maxExecutions);
|
|
41
|
-
}
|
|
42
|
-
this.writeFile(file);
|
|
43
|
-
}
|
|
44
|
-
getExecutions(sourceId, jobId) {
|
|
45
|
-
const file = this.readFile(sourceId);
|
|
46
|
-
let executions = file.executions;
|
|
47
|
-
if (jobId) {
|
|
48
|
-
executions = executions.filter(e => e.jobId === jobId);
|
|
49
|
-
}
|
|
50
|
-
// Return in reverse chronological order (most recent first)
|
|
51
|
-
return executions.reverse();
|
|
52
|
-
}
|
|
53
|
-
clear(sourceId) {
|
|
54
|
-
const filePath = this.getFilePath(sourceId);
|
|
55
|
-
if (fs_1.default.existsSync(filePath)) {
|
|
56
|
-
fs_1.default.unlinkSync(filePath);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
exports.SourceJobExecutionStore = SourceJobExecutionStore;
|
|
61
|
-
//# sourceMappingURL=SourceJobExecutionStore.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SourceJobExecutionStore.js","sourceRoot":"","sources":["../../../../src/local_engine/storage/SourceJobExecutionStore.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,4CAAoB;AAiBpB,MAAa,uBAAuB;IAIlC,YAAY,UAAkB;QAFtB,kBAAa,GAAW,GAAG,CAAC;QAGlC,IAAI,CAAC,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,uBAAuB,CAAC,CAAC;QAC5E,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAEO,gBAAgB;QACtB,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACpC,YAAE,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,QAAgB;QAClC,OAAO,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,QAAQ,OAAO,CAAC,CAAC;IACxD,CAAC;IAEO,QAAQ,CAAC,QAAgB;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;QACtC,CAAC;QACD,MAAM,OAAO,GAAG,YAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACnD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAEO,SAAS,CAAC,IAA4B;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjD,YAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,YAAY,CAAC,QAAgB,EAAE,SAA6B;QAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAErC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEhC,wCAAwC;QACxC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YAChD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAED,aAAa,CAAC,QAAgB,EAAE,KAAc;QAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAErC,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAEjC,IAAI,KAAK,EAAE,CAAC;YACV,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;QACzD,CAAC;QAED,4DAA4D;QAC5D,OAAO,UAAU,CAAC,OAAO,EAAE,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,QAAgB;QACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;CACF;AAjED,0DAiEC"}
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SourceDataViewer = void 0;
|
|
4
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const react_1 = require("react");
|
|
6
|
-
const SourceDataViewer = ({ sourceId, apiBaseUrl, context }) => {
|
|
7
|
-
const [data, setData] = (0, react_1.useState)([]);
|
|
8
|
-
const [loading, setLoading] = (0, react_1.useState)(false);
|
|
9
|
-
const [error, setError] = (0, react_1.useState)(null);
|
|
10
|
-
const [autoRefresh, setAutoRefresh] = (0, react_1.useState)(true);
|
|
11
|
-
const intervalRef = (0, react_1.useRef)(null);
|
|
12
|
-
(0, react_1.useEffect)(() => {
|
|
13
|
-
fetchData();
|
|
14
|
-
// Set up auto-refresh
|
|
15
|
-
if (autoRefresh) {
|
|
16
|
-
intervalRef.current = setInterval(fetchData, 2000);
|
|
17
|
-
}
|
|
18
|
-
return () => {
|
|
19
|
-
if (intervalRef.current) {
|
|
20
|
-
clearInterval(intervalRef.current);
|
|
21
|
-
}
|
|
22
|
-
};
|
|
23
|
-
}, [sourceId, context, autoRefresh]);
|
|
24
|
-
const fetchData = async () => {
|
|
25
|
-
try {
|
|
26
|
-
setLoading(true);
|
|
27
|
-
let url = `${apiBaseUrl}/sources/${sourceId}/data`;
|
|
28
|
-
if (context) {
|
|
29
|
-
url += `?context=${context}`;
|
|
30
|
-
}
|
|
31
|
-
const response = await fetch(url);
|
|
32
|
-
if (!response.ok) {
|
|
33
|
-
const errorData = await response.json();
|
|
34
|
-
throw new Error(errorData.error || 'Failed to fetch data');
|
|
35
|
-
}
|
|
36
|
-
const result = await response.json();
|
|
37
|
-
setData(result.data || []);
|
|
38
|
-
setError(null);
|
|
39
|
-
}
|
|
40
|
-
catch (err) {
|
|
41
|
-
setError(`Failed to load data: ${err.message}`);
|
|
42
|
-
console.error(err);
|
|
43
|
-
}
|
|
44
|
-
finally {
|
|
45
|
-
setLoading(false);
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
const clearData = async () => {
|
|
49
|
-
try {
|
|
50
|
-
let url = `${apiBaseUrl}/sources/${sourceId}/data`;
|
|
51
|
-
if (context) {
|
|
52
|
-
url += `?context=${context}`;
|
|
53
|
-
}
|
|
54
|
-
const response = await fetch(url, {
|
|
55
|
-
method: 'DELETE'
|
|
56
|
-
});
|
|
57
|
-
if (!response.ok) {
|
|
58
|
-
throw new Error('Failed to clear data');
|
|
59
|
-
}
|
|
60
|
-
setData([]);
|
|
61
|
-
}
|
|
62
|
-
catch (err) {
|
|
63
|
-
setError(`Failed to clear data: ${err.message}`);
|
|
64
|
-
console.error(err);
|
|
65
|
-
}
|
|
66
|
-
};
|
|
67
|
-
const exportData = () => {
|
|
68
|
-
const dataStr = JSON.stringify(data, null, 2);
|
|
69
|
-
const dataBlob = new Blob([dataStr], { type: 'application/json' });
|
|
70
|
-
const url = URL.createObjectURL(dataBlob);
|
|
71
|
-
const link = document.createElement('a');
|
|
72
|
-
link.href = url;
|
|
73
|
-
link.download = `source-${sourceId}-data-${Date.now()}.json`;
|
|
74
|
-
link.click();
|
|
75
|
-
URL.revokeObjectURL(url);
|
|
76
|
-
};
|
|
77
|
-
const formatTimestamp = (timestamp) => {
|
|
78
|
-
const date = new Date(timestamp);
|
|
79
|
-
return date.toLocaleString();
|
|
80
|
-
};
|
|
81
|
-
return ((0, jsx_runtime_1.jsxs)("div", { className: "source-data-viewer", children: [(0, jsx_runtime_1.jsxs)("div", { className: "data-viewer-header", children: [(0, jsx_runtime_1.jsx)("h3", { children: "Emitted Data" }), (0, jsx_runtime_1.jsxs)("div", { className: "data-viewer-controls", children: [(0, jsx_runtime_1.jsxs)("label", { className: "auto-refresh-toggle", children: [(0, jsx_runtime_1.jsx)("input", { type: "checkbox", checked: autoRefresh, onChange: (e) => setAutoRefresh(e.target.checked) }), "Auto-refresh"] }), (0, jsx_runtime_1.jsx)("button", { onClick: fetchData, disabled: loading, children: "Refresh" }), (0, jsx_runtime_1.jsx)("button", { onClick: exportData, disabled: data.length === 0, children: "Export" }), (0, jsx_runtime_1.jsx)("button", { onClick: clearData, disabled: data.length === 0, children: "Clear" })] })] }), error && ((0, jsx_runtime_1.jsx)("div", { className: "data-viewer-error", children: error })), (0, jsx_runtime_1.jsx)("div", { className: "data-entries", children: data.length === 0 ? ((0, jsx_runtime_1.jsxs)("div", { className: "no-data", children: [(0, jsx_runtime_1.jsx)("p", { children: "No data emitted yet" }), (0, jsx_runtime_1.jsx)("p", { className: "hint", children: "Data emitted via source.emit() will appear here" })] })) : ((0, jsx_runtime_1.jsx)("div", { className: "entries-list", children: data.slice().reverse().map((entry, index) => ((0, jsx_runtime_1.jsxs)("div", { className: "data-entry", children: [(0, jsx_runtime_1.jsxs)("div", { className: "entry-header", children: [(0, jsx_runtime_1.jsx)("span", { className: "entry-timestamp", children: formatTimestamp(entry.timestamp) }), entry.metadata && ((0, jsx_runtime_1.jsxs)("span", { className: "entry-metadata", children: [Object.keys(entry.metadata).length, " metadata fields"] }))] }), (0, jsx_runtime_1.jsx)("div", { className: "entry-data", children: (0, jsx_runtime_1.jsx)("pre", { children: JSON.stringify(entry.data, null, 2) }) }), entry.metadata && ((0, jsx_runtime_1.jsxs)("details", { className: "entry-metadata-details", children: [(0, jsx_runtime_1.jsx)("summary", { children: "Metadata" }), (0, jsx_runtime_1.jsx)("pre", { children: JSON.stringify(entry.metadata, null, 2) })] }))] }, index))) })) }), (0, jsx_runtime_1.jsx)("div", { className: "data-viewer-footer", children: (0, jsx_runtime_1.jsxs)("span", { children: [data.length, " entries (max 50)"] }) })] }));
|
|
82
|
-
};
|
|
83
|
-
exports.SourceDataViewer = SourceDataViewer;
|
|
84
|
-
//# sourceMappingURL=SourceDataViewer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SourceDataViewer.js","sourceRoot":"","sources":["../../../../src/ui/components/SourceDataViewer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SourceJobsSection = void 0;
|
|
4
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const react_1 = require("react");
|
|
6
|
-
const useQueryParams_1 = require("../hooks/useQueryParams");
|
|
7
|
-
const SourceDataViewer_1 = require("./SourceDataViewer");
|
|
8
|
-
const SourceJobsSection = ({ sourceId, jobs, apiBaseUrl }) => {
|
|
9
|
-
const { getParam, setParams } = (0, useQueryParams_1.useQueryParams)();
|
|
10
|
-
const [executions, setExecutions] = (0, react_1.useState)([]);
|
|
11
|
-
const [expandedResult, setExpandedResult] = (0, react_1.useState)(false);
|
|
12
|
-
const [loading, setLoading] = (0, react_1.useState)(false);
|
|
13
|
-
const [error, setError] = (0, react_1.useState)(null);
|
|
14
|
-
const jobList = Object.entries(jobs);
|
|
15
|
-
// Derive selection from URL (only when on jobs tab)
|
|
16
|
-
const selectedJobId = getParam('sourceJob');
|
|
17
|
-
const selectedExecutionId = getParam('execution');
|
|
18
|
-
const selectedJob = jobList.find(([id]) => id === selectedJobId)?.[0] || null;
|
|
19
|
-
const selectedExecution = executions.find((e) => e.timestamp?.toString() === selectedExecutionId) || null;
|
|
20
|
-
const handleJobSelect = (0, react_1.useCallback)((jobId, replace = false) => {
|
|
21
|
-
setParams({ sourceJob: jobId, execution: null }, replace);
|
|
22
|
-
}, [setParams]);
|
|
23
|
-
const handleExecutionSelect = (0, react_1.useCallback)((execution, replace = false) => {
|
|
24
|
-
setParams({ execution: execution.timestamp.toString() }, replace);
|
|
25
|
-
}, [setParams]);
|
|
26
|
-
// Auto-select first job
|
|
27
|
-
(0, react_1.useEffect)(() => {
|
|
28
|
-
if (jobList.length > 0 && !selectedJobId) {
|
|
29
|
-
handleJobSelect(jobList[0][0], true); // replace: true for auto-selection
|
|
30
|
-
}
|
|
31
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
32
|
-
}, [jobList, selectedJobId]);
|
|
33
|
-
// Fetch executions when job is selected
|
|
34
|
-
(0, react_1.useEffect)(() => {
|
|
35
|
-
if (selectedJob) {
|
|
36
|
-
fetchExecutions(selectedJob);
|
|
37
|
-
}
|
|
38
|
-
}, [selectedJob]);
|
|
39
|
-
// Auto-select first execution when job changes
|
|
40
|
-
(0, react_1.useEffect)(() => {
|
|
41
|
-
if (executions.length > 0 && !selectedExecutionId) {
|
|
42
|
-
handleExecutionSelect(executions[0], true); // replace: true for auto-selection
|
|
43
|
-
}
|
|
44
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
45
|
-
}, [executions, selectedExecutionId]);
|
|
46
|
-
const fetchExecutions = async (jobId) => {
|
|
47
|
-
try {
|
|
48
|
-
const response = await fetch(`${apiBaseUrl}/sources/${sourceId}/jobs/${jobId}/executions`);
|
|
49
|
-
if (!response.ok) {
|
|
50
|
-
throw new Error('Failed to fetch executions');
|
|
51
|
-
}
|
|
52
|
-
const data = await response.json();
|
|
53
|
-
const jobExecutions = data.executions || [];
|
|
54
|
-
setExecutions(jobExecutions);
|
|
55
|
-
if (jobExecutions.length === 0) {
|
|
56
|
-
setParams({ execution: null });
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
catch (err) {
|
|
60
|
-
console.error(`Failed to fetch executions for job ${jobId}:`, err);
|
|
61
|
-
setExecutions([]);
|
|
62
|
-
setParams({ execution: null });
|
|
63
|
-
}
|
|
64
|
-
};
|
|
65
|
-
const runJob = async (jobId) => {
|
|
66
|
-
try {
|
|
67
|
-
setLoading(true);
|
|
68
|
-
setError(null);
|
|
69
|
-
const response = await fetch(`${apiBaseUrl}/sources/${sourceId}/jobs/${jobId}`, {
|
|
70
|
-
method: 'POST',
|
|
71
|
-
headers: { 'Content-Type': 'application/json' },
|
|
72
|
-
body: JSON.stringify({ parameters: {} })
|
|
73
|
-
});
|
|
74
|
-
if (!response.ok) {
|
|
75
|
-
const errorData = await response.json();
|
|
76
|
-
throw new Error(errorData.error || 'Failed to run job');
|
|
77
|
-
}
|
|
78
|
-
// Refresh executions
|
|
79
|
-
await fetchExecutions(jobId);
|
|
80
|
-
}
|
|
81
|
-
catch (err) {
|
|
82
|
-
setError(`Failed to run job ${jobId}: ${err.message}`);
|
|
83
|
-
console.error(err);
|
|
84
|
-
}
|
|
85
|
-
finally {
|
|
86
|
-
setLoading(false);
|
|
87
|
-
}
|
|
88
|
-
};
|
|
89
|
-
const formatTimestamp = (timestamp) => {
|
|
90
|
-
const date = new Date(timestamp);
|
|
91
|
-
return date.toLocaleString();
|
|
92
|
-
};
|
|
93
|
-
const getStatusColor = (success) => {
|
|
94
|
-
return success ? '#28a745' : '#dc3545';
|
|
95
|
-
};
|
|
96
|
-
return ((0, jsx_runtime_1.jsxs)("div", { className: "source-jobs-container", children: [(0, jsx_runtime_1.jsxs)("div", { className: "source-jobs-controls", children: [(0, jsx_runtime_1.jsxs)("div", { className: "job-selector-group", children: [(0, jsx_runtime_1.jsx)("label", { htmlFor: "job-select", children: "Source Job:" }), (0, jsx_runtime_1.jsx)("select", { id: "job-select", value: selectedJob || '', onChange: (e) => handleJobSelect(e.target.value), disabled: jobList.length === 0, children: jobList.length === 0 ? ((0, jsx_runtime_1.jsx)("option", { value: "", children: "No jobs defined" })) : (jobList.map(([jobId, jobConfig]) => ((0, jsx_runtime_1.jsxs)("option", { value: jobId, children: [jobId, " - ", jobConfig.description || 'No description'] }, jobId)))) })] }), selectedJob && ((0, jsx_runtime_1.jsx)("button", { className: "start-job-btn", onClick: () => runJob(selectedJob), disabled: loading, children: loading ? 'Running...' : 'Run Job' }))] }), (0, jsx_runtime_1.jsxs)("div", { className: "source-jobs-panels", children: [(0, jsx_runtime_1.jsxs)("div", { className: "executions-panel", children: [(0, jsx_runtime_1.jsxs)("div", { className: "executions-header", children: [(0, jsx_runtime_1.jsx)("h4", { children: "Execution History" }), selectedJob && ((0, jsx_runtime_1.jsxs)("span", { className: "selected-job", children: ["Job: ", selectedJob] }))] }), (0, jsx_runtime_1.jsx)("div", { className: "executions-list", children: executions.length === 0 ? ((0, jsx_runtime_1.jsx)("div", { className: "no-executions", children: (0, jsx_runtime_1.jsx)("p", { children: selectedJob ? 'No executions yet' : 'Select a job to see executions' }) })) : (executions.map((execution, index) => ((0, jsx_runtime_1.jsxs)("div", { className: `execution-item ${selectedExecution === execution ? 'active' : ''}`, onClick: () => handleExecutionSelect(execution), children: [(0, jsx_runtime_1.jsxs)("div", { className: "execution-status", children: [(0, jsx_runtime_1.jsx)("span", { className: "status-dot", style: { backgroundColor: getStatusColor(execution.success) } }), (0, jsx_runtime_1.jsx)("span", { className: "status-text", children: execution.success ? 'Completed' : 'Failed' })] }), (0, jsx_runtime_1.jsxs)("div", { className: "execution-time", children: [(0, jsx_runtime_1.jsx)("div", { className: "started-at", children: formatTimestamp(execution.timestamp) }), (0, jsx_runtime_1.jsxs)("div", { className: "execution-duration", children: ["Duration: ", execution.executionTime, "ms"] })] }), (0, jsx_runtime_1.jsx)("div", { className: "execution-stats", children: (0, jsx_runtime_1.jsx)("span", { className: "state-count", children: "1 state" }) }), execution.error && ((0, jsx_runtime_1.jsxs)("div", { className: "execution-error", children: ["Error: ", execution.error] }))] }, index)))) })] }), (0, jsx_runtime_1.jsxs)("div", { className: "source-jobs-right-column", children: [(0, jsx_runtime_1.jsxs)("div", { className: "states-panel", children: [(0, jsx_runtime_1.jsxs)("div", { className: "states-header", children: [(0, jsx_runtime_1.jsx)("h4", { children: "Job States" }), selectedExecution && ((0, jsx_runtime_1.jsxs)("span", { className: "selected-execution", children: ["Execution: ", selectedExecution.timestamp.toString().slice(0, 8), "..."] }))] }), (0, jsx_runtime_1.jsx)("div", { className: "states-list", children: !selectedExecution ? ((0, jsx_runtime_1.jsx)("div", { className: "no-states", children: (0, jsx_runtime_1.jsx)("p", { children: "Select an execution to see states" }) })) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [selectedExecution.result && ((0, jsx_runtime_1.jsxs)("div", { className: "state-item", children: [(0, jsx_runtime_1.jsxs)("div", { className: "state-header", onClick: () => setExpandedResult(!expandedResult), children: [(0, jsx_runtime_1.jsxs)("div", { className: "state-meta", children: [(0, jsx_runtime_1.jsxs)("div", { className: "state-primary-info", children: [(0, jsx_runtime_1.jsx)("span", { className: "state-timestamp", children: formatTimestamp(selectedExecution.timestamp) }), (0, jsx_runtime_1.jsx)("span", { className: "state-phase perform", children: "PERFORM" })] }), (0, jsx_runtime_1.jsx)("div", { className: "state-secondary-info", children: (0, jsx_runtime_1.jsx)("span", { className: `state-status ${selectedExecution.success ? 'complete' : 'error'}`, children: selectedExecution.success ? 'Completed' : 'Error' }) })] }), (0, jsx_runtime_1.jsx)("div", { className: "state-expand", children: (0, jsx_runtime_1.jsx)("span", { className: `expand-icon ${expandedResult ? 'expanded' : ''}`, children: "\u25BC" }) })] }), expandedResult && ((0, jsx_runtime_1.jsx)("div", { className: "state-content", children: (0, jsx_runtime_1.jsx)("pre", { children: JSON.stringify(selectedExecution.result, null, 2) }) }))] })), selectedExecution.error && !selectedExecution.result && ((0, jsx_runtime_1.jsxs)("div", { className: "state-item", children: [(0, jsx_runtime_1.jsxs)("div", { className: "state-header", onClick: () => setExpandedResult(!expandedResult), children: [(0, jsx_runtime_1.jsxs)("div", { className: "state-meta", children: [(0, jsx_runtime_1.jsxs)("div", { className: "state-primary-info", children: [(0, jsx_runtime_1.jsx)("span", { className: "state-timestamp", children: formatTimestamp(selectedExecution.timestamp) }), (0, jsx_runtime_1.jsx)("span", { className: "state-phase perform", children: "PERFORM" })] }), (0, jsx_runtime_1.jsx)("div", { className: "state-secondary-info", children: (0, jsx_runtime_1.jsx)("span", { className: "state-status error", children: "Error" }) })] }), (0, jsx_runtime_1.jsx)("div", { className: "state-expand", children: (0, jsx_runtime_1.jsx)("span", { className: `expand-icon ${expandedResult ? 'expanded' : ''}`, children: "\u25BC" }) })] }), expandedResult && ((0, jsx_runtime_1.jsx)("div", { className: "state-content", children: (0, jsx_runtime_1.jsx)("pre", { children: selectedExecution.error }) }))] }))] })) })] }), (0, jsx_runtime_1.jsx)("div", { className: "source-panel", children: (0, jsx_runtime_1.jsx)(SourceDataViewer_1.SourceDataViewer, { sourceId: sourceId, apiBaseUrl: apiBaseUrl, context: "job" }) })] })] }), error && ((0, jsx_runtime_1.jsx)("div", { className: "toast-notification toast-error", children: (0, jsx_runtime_1.jsxs)("div", { className: "toast-content", children: [(0, jsx_runtime_1.jsx)("strong", { children: "Error" }), (0, jsx_runtime_1.jsx)("div", { className: "toast-message", children: error })] }) }))] }));
|
|
97
|
-
};
|
|
98
|
-
exports.SourceJobsSection = SourceJobsSection;
|
|
99
|
-
//# sourceMappingURL=SourceJobsSection.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SourceJobsSection.js","sourceRoot":"","sources":["../../../../src/ui/components/SourceJobsSection.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SourceLifecycleSection = void 0;
|
|
4
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const react_1 = require("react");
|
|
6
|
-
const SourceLifecycleSection = ({ sourceId, apiBaseUrl }) => {
|
|
7
|
-
const [loading, setLoading] = (0, react_1.useState)({});
|
|
8
|
-
const [lastResponse, setLastResponse] = (0, react_1.useState)(null);
|
|
9
|
-
const lifecycleMethods = [
|
|
10
|
-
{ id: 'create', label: 'Create', description: 'Setup source webhooks' },
|
|
11
|
-
{ id: 'update', label: 'Update', description: 'Update source configuration' },
|
|
12
|
-
{ id: 'delete', label: 'Delete', description: 'Cleanup tasks' },
|
|
13
|
-
{ id: 'enable', label: 'Enable', description: 'Enable source' },
|
|
14
|
-
{ id: 'pause', label: 'Pause', description: 'Pause source' }
|
|
15
|
-
];
|
|
16
|
-
const executeLifecycle = async (action) => {
|
|
17
|
-
try {
|
|
18
|
-
setLoading(prev => ({ ...prev, [action]: true }));
|
|
19
|
-
const response = await fetch(`${apiBaseUrl}/sources/${sourceId}/${action}`, {
|
|
20
|
-
method: 'POST',
|
|
21
|
-
headers: { 'Content-Type': 'application/json' }
|
|
22
|
-
});
|
|
23
|
-
if (!response.ok) {
|
|
24
|
-
const errorData = await response.json();
|
|
25
|
-
throw new Error(errorData.error || `Failed to execute ${action}`);
|
|
26
|
-
}
|
|
27
|
-
const data = await response.json();
|
|
28
|
-
const result = data.result;
|
|
29
|
-
// Store response for display
|
|
30
|
-
setLastResponse({
|
|
31
|
-
action,
|
|
32
|
-
timestamp: Date.now(),
|
|
33
|
-
success: result.success,
|
|
34
|
-
message: result.message
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
catch (err) {
|
|
38
|
-
// Store error response
|
|
39
|
-
setLastResponse({
|
|
40
|
-
action,
|
|
41
|
-
timestamp: Date.now(),
|
|
42
|
-
success: false,
|
|
43
|
-
message: err.message
|
|
44
|
-
});
|
|
45
|
-
console.error(err);
|
|
46
|
-
}
|
|
47
|
-
finally {
|
|
48
|
-
setLoading(prev => ({ ...prev, [action]: false }));
|
|
49
|
-
}
|
|
50
|
-
};
|
|
51
|
-
const formatTimestamp = (timestamp) => {
|
|
52
|
-
const date = new Date(timestamp);
|
|
53
|
-
return date.toLocaleString();
|
|
54
|
-
};
|
|
55
|
-
return ((0, jsx_runtime_1.jsx)("div", { className: "source-lifecycle-container", children: (0, jsx_runtime_1.jsxs)("div", { className: "lifecycle-two-panel", children: [(0, jsx_runtime_1.jsxs)("div", { className: "lifecycle-methods-panel", children: [(0, jsx_runtime_1.jsxs)("div", { className: "panel-header", children: [(0, jsx_runtime_1.jsx)("h3", { children: "Lifecycle Hooks" }), (0, jsx_runtime_1.jsxs)("p", { className: "panel-description", children: ["Trigger lifecycle callbacks for ", (0, jsx_runtime_1.jsx)("strong", { children: sourceId })] })] }), (0, jsx_runtime_1.jsx)("div", { className: "lifecycle-methods-list", children: lifecycleMethods.map(method => ((0, jsx_runtime_1.jsx)("div", { className: "lifecycle-method-item", children: (0, jsx_runtime_1.jsxs)("div", { className: "method-header", children: [(0, jsx_runtime_1.jsxs)("div", { className: "method-info", children: [(0, jsx_runtime_1.jsx)("h4", { children: method.label }), (0, jsx_runtime_1.jsx)("p", { children: method.description })] }), (0, jsx_runtime_1.jsx)("button", { className: "lifecycle-trigger-btn", onClick: () => executeLifecycle(method.id), disabled: loading[method.id], children: loading[method.id] ? 'Running...' : 'Trigger' })] }) }, method.id))) })] }), (0, jsx_runtime_1.jsxs)("div", { className: "lifecycle-response-panel", children: [(0, jsx_runtime_1.jsx)("div", { className: "panel-header", children: (0, jsx_runtime_1.jsx)("h3", { children: "Response" }) }), (0, jsx_runtime_1.jsx)("div", { className: "response-content", children: !lastResponse ? ((0, jsx_runtime_1.jsxs)("div", { className: "no-response", children: [(0, jsx_runtime_1.jsx)("p", { children: "No lifecycle hook has been triggered yet." }), (0, jsx_runtime_1.jsx)("p", { className: "hint", children: "Click a \"Trigger\" button to execute a lifecycle hook." })] })) : ((0, jsx_runtime_1.jsxs)("div", { className: "response-details", children: [(0, jsx_runtime_1.jsxs)("div", { className: "response-header", children: [(0, jsx_runtime_1.jsxs)("div", { className: `response-status ${lastResponse.success ? 'success' : 'error'}`, children: [(0, jsx_runtime_1.jsx)("span", { className: "status-dot" }), (0, jsx_runtime_1.jsx)("span", { className: "status-text", children: lastResponse.success ? 'Success' : 'Error' })] }), (0, jsx_runtime_1.jsxs)("div", { className: "response-meta", children: [(0, jsx_runtime_1.jsx)("span", { className: "response-action", children: lastResponse.action }), (0, jsx_runtime_1.jsx)("span", { className: "response-time", children: formatTimestamp(lastResponse.timestamp) })] })] }), lastResponse.message && ((0, jsx_runtime_1.jsxs)("div", { className: "response-message", children: [(0, jsx_runtime_1.jsx)("label", { children: "Message:" }), (0, jsx_runtime_1.jsx)("pre", { children: lastResponse.message })] }))] })) })] })] }) }));
|
|
56
|
-
};
|
|
57
|
-
exports.SourceLifecycleSection = SourceLifecycleSection;
|
|
58
|
-
//# sourceMappingURL=SourceLifecycleSection.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SourceLifecycleSection.js","sourceRoot":"","sources":["../../../../src/ui/components/SourceLifecycleSection.tsx"],"names":[],"mappings":"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"}
|