@trops/dash-core 0.1.502 → 0.1.504
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/dist/electron/index.js +230 -379
- package/dist/electron/index.js.map +1 -1
- package/dist/index.esm.js +1 -7
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +0 -9
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/electron/index.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var require$$0$1 = require('electron');
|
|
4
|
-
var require$$1$1 = require('
|
|
5
|
-
var require$$1$2 = require('path');
|
|
4
|
+
var require$$1$1 = require('path');
|
|
6
5
|
var require$$0$2 = require('fs');
|
|
7
6
|
var require$$8$1 = require('objects-to-csv');
|
|
8
|
-
var require$$1$
|
|
7
|
+
var require$$1$2 = require('readline');
|
|
9
8
|
var require$$2 = require('xtreamer');
|
|
10
9
|
var require$$3$1 = require('xml2js');
|
|
11
10
|
var require$$4 = require('JSONStream');
|
|
@@ -14,27 +13,28 @@ var require$$6 = require('csv-parser');
|
|
|
14
13
|
var require$$0$3 = require('quickjs-emscripten');
|
|
15
14
|
var require$$10 = require('https');
|
|
16
15
|
var require$$0$5 = require('@modelcontextprotocol/sdk/client/index.js');
|
|
17
|
-
var require$$1$
|
|
16
|
+
var require$$1$3 = require('@modelcontextprotocol/sdk/client/stdio.js');
|
|
18
17
|
var require$$0$4 = require('pkce-challenge');
|
|
19
18
|
var require$$2$1 = require('os');
|
|
20
19
|
var require$$12 = require('child_process');
|
|
20
|
+
var require$$0$6 = require('electron-store');
|
|
21
21
|
var require$$3$2 = require('adm-zip');
|
|
22
22
|
var require$$4$1 = require('url');
|
|
23
23
|
var require$$2$2 = require('vm');
|
|
24
|
-
var require$$1$
|
|
24
|
+
var require$$1$4 = require('croner');
|
|
25
25
|
var require$$2$3 = require('algoliasearch');
|
|
26
26
|
var require$$3$3 = require('node:path');
|
|
27
|
-
var require$$0$
|
|
27
|
+
var require$$0$7 = require('openai');
|
|
28
28
|
require('live-plugin-manager');
|
|
29
|
-
var require$$0$
|
|
29
|
+
var require$$0$a = require('@anthropic-ai/sdk');
|
|
30
30
|
var require$$3$4 = require('crypto');
|
|
31
31
|
var require$$8$2 = require('zod');
|
|
32
|
-
var require$$0$
|
|
33
|
-
var require$$1$
|
|
32
|
+
var require$$0$8 = require('http');
|
|
33
|
+
var require$$1$5 = require('http2');
|
|
34
34
|
var require$$2$4 = require('node-forge');
|
|
35
|
-
var require$$0$
|
|
36
|
-
var require$$1$
|
|
37
|
-
var require$$0$
|
|
35
|
+
var require$$0$9 = require('css');
|
|
36
|
+
var require$$1$6 = require('node-vibrant/node');
|
|
37
|
+
var require$$0$b = require('ws');
|
|
38
38
|
|
|
39
39
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
40
40
|
|
|
@@ -79,11 +79,11 @@ const SECURE_STORAGE_ENCRYPT_STRING_COMPLETE =
|
|
|
79
79
|
const SECURE_STORAGE_ENCRYPT_STRING_ERROR =
|
|
80
80
|
"secure-storage-encrypt-string-error";
|
|
81
81
|
|
|
82
|
-
const SECURE_STORE_GET_DATA
|
|
82
|
+
const SECURE_STORE_GET_DATA = "secure-storage-get-data";
|
|
83
83
|
const SECURE_STORE_GET_DATA_COMPLETE = "secure-storage-get-data-complete";
|
|
84
84
|
const SECURE_STORE_GET_DATA_ERROR = "secure-storage-get-data-error";
|
|
85
85
|
|
|
86
|
-
const SECURE_STORE_SET_DATA
|
|
86
|
+
const SECURE_STORE_SET_DATA = "secure-storage-set-data";
|
|
87
87
|
const SECURE_STORE_SET_DATA_COMPLETE = "secure-storage-set-data-complete";
|
|
88
88
|
const SECURE_STORE_SET_DATA_ERROR = "secure-storage-set-data-error";
|
|
89
89
|
|
|
@@ -91,10 +91,10 @@ var secureStorageEvents$1 = {
|
|
|
91
91
|
SECURE_STORE_ENCRYPTION_CHECK: SECURE_STORE_ENCRYPTION_CHECK$1,
|
|
92
92
|
SECURE_STORE_ENCRYPTION_CHECK_COMPLETE,
|
|
93
93
|
SECURE_STORE_ENCRYPTION_CHECK_ERROR,
|
|
94
|
-
SECURE_STORE_SET_DATA
|
|
94
|
+
SECURE_STORE_SET_DATA,
|
|
95
95
|
SECURE_STORE_SET_DATA_COMPLETE,
|
|
96
96
|
SECURE_STORE_SET_DATA_ERROR,
|
|
97
|
-
SECURE_STORE_GET_DATA
|
|
97
|
+
SECURE_STORE_GET_DATA,
|
|
98
98
|
SECURE_STORE_GET_DATA_COMPLETE,
|
|
99
99
|
SECURE_STORE_GET_DATA_ERROR,
|
|
100
100
|
SECURE_STORAGE_ENCRYPT_STRING,
|
|
@@ -142,17 +142,10 @@ const LAYOUT_LIST$1 = "layout-list";
|
|
|
142
142
|
const LAYOUT_LIST_COMPLETE = "layout-list-complete";
|
|
143
143
|
const LAYOUT_LIST_ERROR = "layout-list-error";
|
|
144
144
|
|
|
145
|
-
const LAYOUT_SAVE$1 = "layout-save";
|
|
146
|
-
const LAYOUT_SAVE_COMPLETE = "layout-save-complete";
|
|
147
|
-
const LAYOUT_SAVE_ERROR = "layout-save-error";
|
|
148
|
-
|
|
149
145
|
var layoutEvents$1 = {
|
|
150
146
|
LAYOUT_LIST: LAYOUT_LIST$1,
|
|
151
147
|
LAYOUT_LIST_COMPLETE,
|
|
152
148
|
LAYOUT_LIST_ERROR,
|
|
153
|
-
LAYOUT_SAVE: LAYOUT_SAVE$1,
|
|
154
|
-
LAYOUT_SAVE_COMPLETE,
|
|
155
|
-
LAYOUT_SAVE_ERROR,
|
|
156
149
|
};
|
|
157
150
|
|
|
158
151
|
/**
|
|
@@ -611,24 +604,6 @@ var llmEvents$1 = {
|
|
|
611
604
|
LLM_CLI_END_SESSION: LLM_CLI_END_SESSION$1,
|
|
612
605
|
};
|
|
613
606
|
|
|
614
|
-
/**
|
|
615
|
-
* Event Constants File - Client Cache Events
|
|
616
|
-
*
|
|
617
|
-
* This file contains event constants for client cache management IPC communication.
|
|
618
|
-
*/
|
|
619
|
-
|
|
620
|
-
const CLIENT_CACHE_INVALIDATE$1 = "client-cache-invalidate";
|
|
621
|
-
const CLIENT_CACHE_INVALIDATE_ALL$1 = "client-cache-invalidate-all";
|
|
622
|
-
const RESPONSE_CACHE_CLEAR$1 = "response-cache-clear";
|
|
623
|
-
const RESPONSE_CACHE_STATS$1 = "response-cache-stats";
|
|
624
|
-
|
|
625
|
-
var clientCacheEvents$1 = {
|
|
626
|
-
CLIENT_CACHE_INVALIDATE: CLIENT_CACHE_INVALIDATE$1,
|
|
627
|
-
CLIENT_CACHE_INVALIDATE_ALL: CLIENT_CACHE_INVALIDATE_ALL$1,
|
|
628
|
-
RESPONSE_CACHE_CLEAR: RESPONSE_CACHE_CLEAR$1,
|
|
629
|
-
RESPONSE_CACHE_STATS: RESPONSE_CACHE_STATS$1,
|
|
630
|
-
};
|
|
631
|
-
|
|
632
607
|
/**
|
|
633
608
|
* Dashboard Config Events
|
|
634
609
|
*
|
|
@@ -941,7 +916,6 @@ const algoliaEvents = algoliaEvents$1;
|
|
|
941
916
|
const menuItemEvents = menuItemEvents$1;
|
|
942
917
|
const openaiEvents = openaiEvents$1;
|
|
943
918
|
const llmEvents = llmEvents$1;
|
|
944
|
-
const clientCacheEvents = clientCacheEvents$1;
|
|
945
919
|
const dashboardConfigEvents = requireDashboardConfigEvents();
|
|
946
920
|
const dashboardRatingsEvents = dashboardRatingsEvents$1;
|
|
947
921
|
const registryAuthEvents = registryAuthEvents$1;
|
|
@@ -963,7 +937,6 @@ const publicEvents = {
|
|
|
963
937
|
*/
|
|
964
938
|
const API_GROUPS = {
|
|
965
939
|
algolia: Object.values(algoliaEvents),
|
|
966
|
-
cache: Object.values(clientCacheEvents),
|
|
967
940
|
"dashboard-config": Object.values(dashboardConfigEvents),
|
|
968
941
|
"dashboard-ratings": Object.values(dashboardRatingsEvents),
|
|
969
942
|
data: Object.values(dataEvents),
|
|
@@ -1004,7 +977,6 @@ var events$8 = {
|
|
|
1004
977
|
...menuItemEvents,
|
|
1005
978
|
...openaiEvents,
|
|
1006
979
|
...llmEvents,
|
|
1007
|
-
...clientCacheEvents,
|
|
1008
980
|
...dashboardConfigEvents,
|
|
1009
981
|
...dashboardRatingsEvents,
|
|
1010
982
|
...registryAuthEvents,
|
|
@@ -1044,22 +1016,23 @@ var dialogController$1 = {
|
|
|
1044
1016
|
};
|
|
1045
1017
|
|
|
1046
1018
|
/**
|
|
1047
|
-
*
|
|
1019
|
+
* secureStoreController
|
|
1020
|
+
*
|
|
1021
|
+
* Thin wrapper around Electron's `safeStorage` for renderer-side
|
|
1022
|
+
* encryption checks. The `saveData` / `getData` helpers that previously
|
|
1023
|
+
* lived here were unwired (no IPC handler in dash-electron) and
|
|
1024
|
+
* lacked per-widget scoping; they were removed alongside their
|
|
1025
|
+
* widget-facing API entries. See `electron/api/secureStoreApi.js`
|
|
1026
|
+
* and the regression-pin in `secureStoreApi.test.js`.
|
|
1027
|
+
*
|
|
1028
|
+
* Provider credential encryption uses `safeStorage.encryptString` /
|
|
1029
|
+
* `decryptString` directly inside `providerController` — that's the
|
|
1030
|
+
* only internal caller and stays unchanged.
|
|
1048
1031
|
*/
|
|
1049
1032
|
|
|
1050
1033
|
const { safeStorage } = require$$0$1;
|
|
1051
|
-
const Store$2 = require$$1$1;
|
|
1052
1034
|
const events$6 = events$8;
|
|
1053
1035
|
|
|
1054
|
-
const schema$1 = {
|
|
1055
|
-
appId: {
|
|
1056
|
-
type: "string",
|
|
1057
|
-
},
|
|
1058
|
-
apiKey: {
|
|
1059
|
-
type: "string",
|
|
1060
|
-
},
|
|
1061
|
-
};
|
|
1062
|
-
|
|
1063
1036
|
const isEncryptionAvailable$1 = (win) => {
|
|
1064
1037
|
const result = safeStorage.isEncryptionAvailable();
|
|
1065
1038
|
win.webContents.send(events$6.SECURE_STORE_ENCRYPTION_CHECK_COMPLETE, result);
|
|
@@ -1075,42 +1048,16 @@ const decryptString = (win, str) => {
|
|
|
1075
1048
|
win.webContents.send("secure-storage-decrypt-string-complete", result);
|
|
1076
1049
|
};
|
|
1077
1050
|
|
|
1078
|
-
const saveData$1 = (key, value) => {
|
|
1079
|
-
try {
|
|
1080
|
-
const store = new Store$2({ schema: schema$1 });
|
|
1081
|
-
store.set(key, value);
|
|
1082
|
-
return getData$1(key);
|
|
1083
|
-
} catch (e) {
|
|
1084
|
-
return { data: null };
|
|
1085
|
-
}
|
|
1086
|
-
};
|
|
1087
|
-
|
|
1088
|
-
const getData$1 = (key) => {
|
|
1089
|
-
try {
|
|
1090
|
-
const store = new Store$2({ schema: schema$1 });
|
|
1091
|
-
const value = store.get(key);
|
|
1092
|
-
if (value) {
|
|
1093
|
-
return { [key]: value };
|
|
1094
|
-
} else {
|
|
1095
|
-
return null;
|
|
1096
|
-
}
|
|
1097
|
-
} catch (e) {
|
|
1098
|
-
return null;
|
|
1099
|
-
}
|
|
1100
|
-
};
|
|
1101
|
-
|
|
1102
1051
|
var secureStoreController$1 = {
|
|
1103
1052
|
isEncryptionAvailable: isEncryptionAvailable$1,
|
|
1104
1053
|
encryptString,
|
|
1105
1054
|
decryptString,
|
|
1106
|
-
saveData: saveData$1,
|
|
1107
|
-
getData: getData$1,
|
|
1108
1055
|
};
|
|
1109
1056
|
|
|
1110
|
-
const path$m = require$$1$
|
|
1057
|
+
const path$m = require$$1$1;
|
|
1111
1058
|
const {
|
|
1112
1059
|
readFileSync,
|
|
1113
|
-
writeFileSync: writeFileSync$
|
|
1060
|
+
writeFileSync: writeFileSync$3,
|
|
1114
1061
|
existsSync,
|
|
1115
1062
|
mkdirSync,
|
|
1116
1063
|
openSync,
|
|
@@ -1201,13 +1148,13 @@ function getFileContents$8(filepath, defaultReturn = []) {
|
|
|
1201
1148
|
|
|
1202
1149
|
// Reinitialize with default content
|
|
1203
1150
|
fileContentsArray = defaultReturn;
|
|
1204
|
-
writeFileSync$
|
|
1151
|
+
writeFileSync$3(filepath, JSON.stringify(defaultReturn, null, 2));
|
|
1205
1152
|
console.log(`[File] Successfully reinitialized: ${filepath}`);
|
|
1206
1153
|
}
|
|
1207
1154
|
} else {
|
|
1208
1155
|
// we should make the file with default content
|
|
1209
1156
|
closeSync(openSync(filepath, "w"));
|
|
1210
|
-
writeFileSync$
|
|
1157
|
+
writeFileSync$3(filepath, JSON.stringify(defaultReturn, null, 2));
|
|
1211
1158
|
}
|
|
1212
1159
|
|
|
1213
1160
|
return fileContentsArray;
|
|
@@ -1220,7 +1167,7 @@ function getFileContents$8(filepath, defaultReturn = []) {
|
|
|
1220
1167
|
function writeToFile$3(filename, data) {
|
|
1221
1168
|
try {
|
|
1222
1169
|
// write the new pages configuration back to the file
|
|
1223
|
-
return writeFileSync$
|
|
1170
|
+
return writeFileSync$3(filename, data);
|
|
1224
1171
|
} catch (e) {
|
|
1225
1172
|
return false;
|
|
1226
1173
|
}
|
|
@@ -1258,8 +1205,8 @@ var file = {
|
|
|
1258
1205
|
};
|
|
1259
1206
|
|
|
1260
1207
|
const { app: app$e } = require$$0$1;
|
|
1261
|
-
const path$l = require$$1$
|
|
1262
|
-
const { writeFileSync: writeFileSync$
|
|
1208
|
+
const path$l = require$$1$1;
|
|
1209
|
+
const { writeFileSync: writeFileSync$2 } = require$$0$2;
|
|
1263
1210
|
const { getFileContents: getFileContents$7 } = file;
|
|
1264
1211
|
|
|
1265
1212
|
const configFilename$5 = "workspaces.json";
|
|
@@ -1331,7 +1278,7 @@ const workspaceController$3 = {
|
|
|
1331
1278
|
}
|
|
1332
1279
|
|
|
1333
1280
|
// write the new pages configuration back to the file
|
|
1334
|
-
writeFileSync$
|
|
1281
|
+
writeFileSync$2(filename, JSON.stringify(workspacesArray, null, 2));
|
|
1335
1282
|
|
|
1336
1283
|
console.log("[workspaceController] Workspace saved successfully");
|
|
1337
1284
|
|
|
@@ -1374,7 +1321,7 @@ const workspaceController$3 = {
|
|
|
1374
1321
|
}
|
|
1375
1322
|
|
|
1376
1323
|
// write the updated workspaces configuration back to the file
|
|
1377
|
-
writeFileSync$
|
|
1324
|
+
writeFileSync$2(filename, JSON.stringify(workspacesArray, null, 2));
|
|
1378
1325
|
|
|
1379
1326
|
console.log("[workspaceController] Menu items saved successfully");
|
|
1380
1327
|
|
|
@@ -1415,7 +1362,7 @@ const workspaceController$3 = {
|
|
|
1415
1362
|
(workspace) => workspace.id !== workspaceId,
|
|
1416
1363
|
);
|
|
1417
1364
|
|
|
1418
|
-
writeFileSync$
|
|
1365
|
+
writeFileSync$2(filename, JSON.stringify(filtered, null, 2));
|
|
1419
1366
|
|
|
1420
1367
|
console.log(
|
|
1421
1368
|
`[workspaceController] Workspace ${workspaceId} deleted successfully`,
|
|
@@ -1510,8 +1457,8 @@ const workspaceController$3 = {
|
|
|
1510
1457
|
var workspaceController_1 = workspaceController$3;
|
|
1511
1458
|
|
|
1512
1459
|
const { app: app$d } = require$$0$1;
|
|
1513
|
-
const path$k = require$$1$
|
|
1514
|
-
const { writeFileSync: writeFileSync$
|
|
1460
|
+
const path$k = require$$1$1;
|
|
1461
|
+
const { writeFileSync: writeFileSync$1 } = require$$0$2;
|
|
1515
1462
|
const { getFileContents: getFileContents$6 } = file;
|
|
1516
1463
|
|
|
1517
1464
|
const configFilename$4 = "themes.json";
|
|
@@ -1546,7 +1493,7 @@ const themeController$5 = {
|
|
|
1546
1493
|
data[name] = obj;
|
|
1547
1494
|
|
|
1548
1495
|
// write the new pages configuration back to the file
|
|
1549
|
-
writeFileSync$
|
|
1496
|
+
writeFileSync$1(filename, JSON.stringify(data, null, 2));
|
|
1550
1497
|
|
|
1551
1498
|
console.log("[themeController] Theme saved successfully");
|
|
1552
1499
|
|
|
@@ -1628,7 +1575,7 @@ const themeController$5 = {
|
|
|
1628
1575
|
|
|
1629
1576
|
if (themeKey in data) {
|
|
1630
1577
|
delete data[themeKey];
|
|
1631
|
-
writeFileSync$
|
|
1578
|
+
writeFileSync$1(filename, JSON.stringify(data, null, 2));
|
|
1632
1579
|
}
|
|
1633
1580
|
|
|
1634
1581
|
console.log("[themeController] Theme deleted successfully:", themeKey);
|
|
@@ -1695,7 +1642,7 @@ var themeController_1 = themeController$5;
|
|
|
1695
1642
|
* `/data/`.
|
|
1696
1643
|
*/
|
|
1697
1644
|
|
|
1698
|
-
const path$j = require$$1$
|
|
1645
|
+
const path$j = require$$1$1;
|
|
1699
1646
|
const fs$e = require$$0$2;
|
|
1700
1647
|
const { app: app$c } = require$$0$1;
|
|
1701
1648
|
|
|
@@ -1864,7 +1811,7 @@ var safePath_1 = {
|
|
|
1864
1811
|
*/
|
|
1865
1812
|
|
|
1866
1813
|
const fs$d = require$$0$2;
|
|
1867
|
-
const path$i = require$$1$
|
|
1814
|
+
const path$i = require$$1$1;
|
|
1868
1815
|
const { app: app$b } = require$$0$1;
|
|
1869
1816
|
|
|
1870
1817
|
const FILE_NAME = "widgetMcpGrants.json";
|
|
@@ -2865,13 +2812,13 @@ function requireTransform () {
|
|
|
2865
2812
|
if (hasRequiredTransform) return transform;
|
|
2866
2813
|
hasRequiredTransform = 1;
|
|
2867
2814
|
var fs = require$$0$2;
|
|
2868
|
-
var readline = require$$1$
|
|
2815
|
+
var readline = require$$1$2;
|
|
2869
2816
|
const xtreamer = require$$2;
|
|
2870
2817
|
var xmlParser = require$$3$1;
|
|
2871
2818
|
var JSONStream = require$$4;
|
|
2872
2819
|
const stream = require$$5;
|
|
2873
2820
|
var csv = require$$6;
|
|
2874
|
-
const path = require$$1$
|
|
2821
|
+
const path = require$$1$1;
|
|
2875
2822
|
const { app } = require$$0$1;
|
|
2876
2823
|
const { ensureDirectoryExistence } = file;
|
|
2877
2824
|
const safeJsExecutor = requireSafeJsExecutor();
|
|
@@ -3313,7 +3260,7 @@ function requireTransform () {
|
|
|
3313
3260
|
|
|
3314
3261
|
const { app: app$a } = require$$0$1;
|
|
3315
3262
|
var fs$c = require$$0$2;
|
|
3316
|
-
const path$h = require$$1$
|
|
3263
|
+
const path$h = require$$1$1;
|
|
3317
3264
|
const events$5 = events$8;
|
|
3318
3265
|
const { getFileContents: getFileContents$5, writeToFile: writeToFile$2 } = file;
|
|
3319
3266
|
const { safePath: safePath$2, getAllowedRoots: getAllowedRoots$1 } = safePath_1;
|
|
@@ -3907,7 +3854,7 @@ var dataController_1 = dataController$1;
|
|
|
3907
3854
|
*/
|
|
3908
3855
|
|
|
3909
3856
|
const { app: app$9 } = require$$0$1;
|
|
3910
|
-
const path$g = require$$1$
|
|
3857
|
+
const path$g = require$$1$1;
|
|
3911
3858
|
const fs$b = require$$0$2;
|
|
3912
3859
|
const { getFileContents: getFileContents$4, writeToFile: writeToFile$1 } = file;
|
|
3913
3860
|
|
|
@@ -4430,7 +4377,7 @@ function requireProviderController () {
|
|
|
4430
4377
|
if (hasRequiredProviderController) return providerController_1;
|
|
4431
4378
|
hasRequiredProviderController = 1;
|
|
4432
4379
|
const { app, safeStorage } = require$$0$1;
|
|
4433
|
-
const path = require$$1$
|
|
4380
|
+
const path = require$$1$1;
|
|
4434
4381
|
const { writeFileSync, readFileSync, existsSync } = require$$0$2;
|
|
4435
4382
|
const {
|
|
4436
4383
|
ensureDirectoryExistence,
|
|
@@ -4812,8 +4759,7 @@ function requireProviderController () {
|
|
|
4812
4759
|
}
|
|
4813
4760
|
|
|
4814
4761
|
const { app: app$8 } = require$$0$1;
|
|
4815
|
-
const path$f = require$$1$
|
|
4816
|
-
const { writeFileSync: writeFileSync$1 } = require$$0$2;
|
|
4762
|
+
const path$f = require$$1$1;
|
|
4817
4763
|
const events$4 = events$8;
|
|
4818
4764
|
const { getFileContents: getFileContents$3 } = file;
|
|
4819
4765
|
|
|
@@ -4821,42 +4767,6 @@ const configFilename$2 = "layouts.json";
|
|
|
4821
4767
|
const appName$3 = "Dashboard";
|
|
4822
4768
|
|
|
4823
4769
|
const layoutController$1 = {
|
|
4824
|
-
/**
|
|
4825
|
-
* saveLayout
|
|
4826
|
-
* Create a workspace from a json configuration object (no template)
|
|
4827
|
-
*
|
|
4828
|
-
* @param {BrowserWindow} win the main window
|
|
4829
|
-
* @param {string} appId the application id
|
|
4830
|
-
* @param {object} pageObject the page config object
|
|
4831
|
-
*/
|
|
4832
|
-
saveLayoutForApplication: (win, appId, layoutObject) => {
|
|
4833
|
-
try {
|
|
4834
|
-
// filename to the pages file (live pages)
|
|
4835
|
-
const filename = path$f.join(
|
|
4836
|
-
app$8.getPath("userData"),
|
|
4837
|
-
appName$3,
|
|
4838
|
-
appId,
|
|
4839
|
-
configFilename$2,
|
|
4840
|
-
);
|
|
4841
|
-
const layoutsArray = getFileContents$3(filename);
|
|
4842
|
-
|
|
4843
|
-
// add the pageObject to the pages file
|
|
4844
|
-
layoutsArray.push(layoutObject);
|
|
4845
|
-
|
|
4846
|
-
// write the new pages configuration back to the file
|
|
4847
|
-
writeFileSync$1(filename, JSON.stringify(layoutsArray, null, 2));
|
|
4848
|
-
|
|
4849
|
-
// message the renderer
|
|
4850
|
-
win.webContents.send(events$4.LAYOUT_SAVE_COMPLETE, {
|
|
4851
|
-
layouts: layoutsArray,
|
|
4852
|
-
});
|
|
4853
|
-
} catch (e) {
|
|
4854
|
-
win.webContents.send(events$4.LAYOUT_SAVE_ERROR, {
|
|
4855
|
-
error: e.message,
|
|
4856
|
-
});
|
|
4857
|
-
}
|
|
4858
|
-
},
|
|
4859
|
-
|
|
4860
4770
|
/**
|
|
4861
4771
|
*
|
|
4862
4772
|
*
|
|
@@ -22525,11 +22435,11 @@ var mcpScopeResolver = {
|
|
|
22525
22435
|
const { Client } = require$$0$5;
|
|
22526
22436
|
const {
|
|
22527
22437
|
StdioClientTransport,
|
|
22528
|
-
} = require$$1$
|
|
22438
|
+
} = require$$1$3;
|
|
22529
22439
|
const {
|
|
22530
22440
|
StreamableHTTPClientTransport,
|
|
22531
22441
|
} = streamableHttp$1;
|
|
22532
|
-
const path$e = require$$1$
|
|
22442
|
+
const path$e = require$$1$1;
|
|
22533
22443
|
const fs$a = require$$0$2;
|
|
22534
22444
|
const os$2 = require$$2$1;
|
|
22535
22445
|
const responseCache$2 = responseCache_1;
|
|
@@ -23685,7 +23595,7 @@ const mcpController$3 = {
|
|
|
23685
23595
|
const sourcePath = credentials?.[from];
|
|
23686
23596
|
if (sourcePath) {
|
|
23687
23597
|
const destPath = to.replace(/^~/, os$2.homedir());
|
|
23688
|
-
const destDir = require$$1$
|
|
23598
|
+
const destDir = require$$1$1.dirname(destPath);
|
|
23689
23599
|
try {
|
|
23690
23600
|
fs$a.mkdirSync(destDir, { recursive: true });
|
|
23691
23601
|
fs$a.copyFileSync(sourcePath, destPath);
|
|
@@ -23905,7 +23815,7 @@ const REGISTRY_BASE_URL$1 =
|
|
|
23905
23815
|
let store$3 = null;
|
|
23906
23816
|
function getStore$1() {
|
|
23907
23817
|
if (!store$3) {
|
|
23908
|
-
const Store = require$$
|
|
23818
|
+
const Store = require$$0$6;
|
|
23909
23819
|
store$3 = new Store({
|
|
23910
23820
|
name: "dash-registry-auth",
|
|
23911
23821
|
encryptionKey: "dash-registry-v1",
|
|
@@ -24273,7 +24183,7 @@ function commonjsRequire(path) {
|
|
|
24273
24183
|
*/
|
|
24274
24184
|
|
|
24275
24185
|
const fs$9 = require$$0$2;
|
|
24276
|
-
const path$d = require$$1$
|
|
24186
|
+
const path$d = require$$1$1;
|
|
24277
24187
|
|
|
24278
24188
|
/**
|
|
24279
24189
|
* Structured error thrown by compileWidget() when the underlying
|
|
@@ -24590,7 +24500,7 @@ var widgetCompiler$1 = {
|
|
|
24590
24500
|
*/
|
|
24591
24501
|
|
|
24592
24502
|
const fs$8 = require$$0$2;
|
|
24593
|
-
const path$c = require$$1$
|
|
24503
|
+
const path$c = require$$1$1;
|
|
24594
24504
|
const vm = require$$2$2;
|
|
24595
24505
|
const { findWidgetsDir: findWidgetsDir$1 } = widgetCompiler$1;
|
|
24596
24506
|
|
|
@@ -24881,7 +24791,7 @@ var dynamicWidgetLoaderExports = dynamicWidgetLoader$3.exports;
|
|
|
24881
24791
|
*/
|
|
24882
24792
|
|
|
24883
24793
|
const fs$7 = require$$0$2;
|
|
24884
|
-
const path$b = require$$1$
|
|
24794
|
+
const path$b = require$$1$1;
|
|
24885
24795
|
const os$1 = require$$2$1;
|
|
24886
24796
|
const { app: app$6 } = require$$0$1;
|
|
24887
24797
|
|
|
@@ -25010,7 +24920,7 @@ var widgetPermissions = {
|
|
|
25010
24920
|
*/
|
|
25011
24921
|
|
|
25012
24922
|
const fs$6 = require$$0$2;
|
|
25013
|
-
const path$a = require$$1$
|
|
24923
|
+
const path$a = require$$1$1;
|
|
25014
24924
|
|
|
25015
24925
|
const SOURCE_EXTENSIONS = new Set([
|
|
25016
24926
|
".js",
|
|
@@ -25190,8 +25100,8 @@ var manifestScanner = {
|
|
|
25190
25100
|
* and dispatching task-fired events to renderer windows.
|
|
25191
25101
|
*/
|
|
25192
25102
|
|
|
25193
|
-
const Store$1 = require$$
|
|
25194
|
-
const { Cron } = require$$1$
|
|
25103
|
+
const Store$1 = require$$0$6;
|
|
25104
|
+
const { Cron } = require$$1$4;
|
|
25195
25105
|
|
|
25196
25106
|
const store$2 = new Store$1({ name: "dash-scheduler" });
|
|
25197
25107
|
|
|
@@ -25713,7 +25623,7 @@ var schedulerController_1 = schedulerController$2;
|
|
|
25713
25623
|
|
|
25714
25624
|
(function (module) {
|
|
25715
25625
|
const fs = require$$0$2;
|
|
25716
|
-
const path = require$$1$
|
|
25626
|
+
const path = require$$1$1;
|
|
25717
25627
|
const os = require$$2$1;
|
|
25718
25628
|
const AdmZip = require$$3$2;
|
|
25719
25629
|
const { fileURLToPath } = require$$4$1;
|
|
@@ -27236,7 +27146,7 @@ var widgetRegistryExports = widgetRegistry$1.exports;
|
|
|
27236
27146
|
* - Support two-level browsing: packages (bundles) and widgets within packages
|
|
27237
27147
|
*/
|
|
27238
27148
|
|
|
27239
|
-
const path$9 = require$$1$
|
|
27149
|
+
const path$9 = require$$1$1;
|
|
27240
27150
|
const fs$5 = require$$0$2;
|
|
27241
27151
|
const os = require$$2$1;
|
|
27242
27152
|
const { toPackageId } = packageId;
|
|
@@ -28406,7 +28316,7 @@ const algoliaController$1 = {
|
|
|
28406
28316
|
|
|
28407
28317
|
var algoliaController_1 = algoliaController$1;
|
|
28408
28318
|
|
|
28409
|
-
const OpenAI = require$$0$
|
|
28319
|
+
const OpenAI = require$$0$7;
|
|
28410
28320
|
const events$2 = events$8;
|
|
28411
28321
|
|
|
28412
28322
|
const openaiController$1 = {
|
|
@@ -28510,7 +28420,7 @@ function upsertMenuItem$1(items, menuItem) {
|
|
|
28510
28420
|
var upsertMenuItem_1 = { upsertMenuItem: upsertMenuItem$1 };
|
|
28511
28421
|
|
|
28512
28422
|
const { app: app$5 } = require$$0$1;
|
|
28513
|
-
const path$7 = require$$1$
|
|
28423
|
+
const path$7 = require$$1$1;
|
|
28514
28424
|
const { writeFileSync } = require$$0$2;
|
|
28515
28425
|
const { getFileContents: getFileContents$2 } = file;
|
|
28516
28426
|
const { upsertMenuItem } = upsertMenuItem_1;
|
|
@@ -28566,7 +28476,7 @@ const menuItemsController$1 = {
|
|
|
28566
28476
|
|
|
28567
28477
|
var menuItemsController_1 = menuItemsController$1;
|
|
28568
28478
|
|
|
28569
|
-
const path$6 = require$$1$
|
|
28479
|
+
const path$6 = require$$1$1;
|
|
28570
28480
|
const { app: app$4 } = require$$0$1;
|
|
28571
28481
|
|
|
28572
28482
|
const pluginController$1 = {
|
|
@@ -46785,13 +46695,13 @@ __export(src_exports, {
|
|
|
46785
46695
|
var dist = __toCommonJS(src_exports);
|
|
46786
46696
|
|
|
46787
46697
|
// src/server.ts
|
|
46788
|
-
var import_node_http = require$$0$
|
|
46698
|
+
var import_node_http = require$$0$8;
|
|
46789
46699
|
|
|
46790
46700
|
// src/listener.ts
|
|
46791
|
-
var import_node_http22 = require$$1$
|
|
46701
|
+
var import_node_http22 = require$$1$5;
|
|
46792
46702
|
|
|
46793
46703
|
// src/request.ts
|
|
46794
|
-
var import_node_http2 = require$$1$
|
|
46704
|
+
var import_node_http2 = require$$1$5;
|
|
46795
46705
|
var import_node_stream = require$$5;
|
|
46796
46706
|
var RequestError = class extends Error {
|
|
46797
46707
|
constructor(message, options) {
|
|
@@ -48369,7 +48279,7 @@ streamableHttp.StreamableHTTPServerTransport = StreamableHTTPServerTransport$1;
|
|
|
48369
48279
|
*/
|
|
48370
48280
|
|
|
48371
48281
|
const fs$2 = require$$0$2;
|
|
48372
|
-
const path$5 = require$$1$
|
|
48282
|
+
const path$5 = require$$1$1;
|
|
48373
48283
|
const forge = require$$2$4;
|
|
48374
48284
|
|
|
48375
48285
|
/**
|
|
@@ -48768,7 +48678,7 @@ function saveMcpServerSettings(win, mcpSettings) {
|
|
|
48768
48678
|
function resolveAppId() {
|
|
48769
48679
|
const { app } = require$$0$1;
|
|
48770
48680
|
const fs = require$$0$2;
|
|
48771
|
-
const path = require$$1$
|
|
48681
|
+
const path = require$$1$1;
|
|
48772
48682
|
const dashboardDir = path.join(app.getPath("userData"), "Dashboard");
|
|
48773
48683
|
try {
|
|
48774
48684
|
const entries = fs.readdirSync(dashboardDir, { withFileTypes: true });
|
|
@@ -50370,10 +50280,10 @@ var themeFromUrlErrors$1 = {
|
|
|
50370
50280
|
* computed styles, and favicon/logo images (via node-vibrant).
|
|
50371
50281
|
*/
|
|
50372
50282
|
|
|
50373
|
-
const css = require$$0$
|
|
50374
|
-
const { Vibrant } = require$$1$
|
|
50283
|
+
const css = require$$0$9;
|
|
50284
|
+
const { Vibrant } = require$$1$6;
|
|
50375
50285
|
const https = require$$10;
|
|
50376
|
-
const http = require$$0$
|
|
50286
|
+
const http = require$$0$8;
|
|
50377
50287
|
const { URL: URL$1 } = require$$4$1;
|
|
50378
50288
|
const {
|
|
50379
50289
|
UrlUnreachableError,
|
|
@@ -54933,7 +54843,7 @@ var toolHandlers$1 = {
|
|
|
54933
54843
|
* per-request, receiving the full messages array each time.
|
|
54934
54844
|
*/
|
|
54935
54845
|
|
|
54936
|
-
const Anthropic = require$$0$
|
|
54846
|
+
const Anthropic = require$$0$a;
|
|
54937
54847
|
const mcpController$2 = mcpControllerExports;
|
|
54938
54848
|
const cliController$1 = cliController_1;
|
|
54939
54849
|
const toolDefinitions = toolDefinitions$1;
|
|
@@ -57114,7 +57024,7 @@ var dashboardConfigUtils$1 = {
|
|
|
57114
57024
|
*/
|
|
57115
57025
|
|
|
57116
57026
|
const fs$1 = require$$0$2;
|
|
57117
|
-
const path$4 = require$$1$
|
|
57027
|
+
const path$4 = require$$1$1;
|
|
57118
57028
|
const { getStoredToken: getStoredToken$2 } = registryAuthController$2;
|
|
57119
57029
|
|
|
57120
57030
|
const REGISTRY_BASE_URL =
|
|
@@ -57389,7 +57299,7 @@ function requireWidgetPublishManifest () {
|
|
|
57389
57299
|
* Mirrors dashboardConfigController patterns for ZIP creation, manifest generation,
|
|
57390
57300
|
* and registry interaction.
|
|
57391
57301
|
*/
|
|
57392
|
-
const path$3 = require$$1$
|
|
57302
|
+
const path$3 = require$$1$1;
|
|
57393
57303
|
const { app: app$3, dialog: dialog$1 } = require$$0$1;
|
|
57394
57304
|
const AdmZip$2 = require$$3$2;
|
|
57395
57305
|
|
|
@@ -58129,7 +58039,7 @@ var themeRegistryController$1 = {
|
|
|
58129
58039
|
*/
|
|
58130
58040
|
|
|
58131
58041
|
const { app: app$2, dialog } = require$$0$1;
|
|
58132
|
-
const path$2 = require$$1$
|
|
58042
|
+
const path$2 = require$$1$1;
|
|
58133
58043
|
const AdmZip$1 = require$$3$2;
|
|
58134
58044
|
const { getFileContents: getFileContents$1 } = file;
|
|
58135
58045
|
const {
|
|
@@ -60098,7 +60008,7 @@ var dashboardConfigController$1 = {
|
|
|
60098
60008
|
*/
|
|
60099
60009
|
|
|
60100
60010
|
const { Notification } = require$$0$1;
|
|
60101
|
-
const Store = require$$
|
|
60011
|
+
const Store = require$$0$6;
|
|
60102
60012
|
|
|
60103
60013
|
const store$1 = new Store({ name: "dash-notifications" });
|
|
60104
60014
|
|
|
@@ -60351,7 +60261,7 @@ var notificationController_1 = notificationController$2;
|
|
|
60351
60261
|
* Multiple widgets referencing the same provider share a single socket.
|
|
60352
60262
|
*/
|
|
60353
60263
|
|
|
60354
|
-
const WebSocket = require$$0$
|
|
60264
|
+
const WebSocket = require$$0$b;
|
|
60355
60265
|
|
|
60356
60266
|
/**
|
|
60357
60267
|
* Active WebSocket connections
|
|
@@ -61341,7 +61251,7 @@ clientCache$1.registerFactory("algolia", (credentials) => {
|
|
|
61341
61251
|
|
|
61342
61252
|
// --- OpenAI ---
|
|
61343
61253
|
clientCache$1.registerFactory("openai", (credentials) => {
|
|
61344
|
-
const OpenAI = require$$0$
|
|
61254
|
+
const OpenAI = require$$0$7;
|
|
61345
61255
|
return new OpenAI({ apiKey: credentials.apiKey });
|
|
61346
61256
|
});
|
|
61347
61257
|
|
|
@@ -61360,7 +61270,7 @@ const MAX_RECENTS = 20;
|
|
|
61360
61270
|
let store = null;
|
|
61361
61271
|
function getStore() {
|
|
61362
61272
|
if (!store) {
|
|
61363
|
-
const Store = require$$
|
|
61273
|
+
const Store = require$$0$6;
|
|
61364
61274
|
store = new Store({ name: "dash-session" });
|
|
61365
61275
|
}
|
|
61366
61276
|
return store;
|
|
@@ -61545,7 +61455,7 @@ var dashboardRatingsUtils = {
|
|
|
61545
61455
|
*/
|
|
61546
61456
|
|
|
61547
61457
|
const { app: app$1 } = require$$0$1;
|
|
61548
|
-
const path$1 = require$$1$
|
|
61458
|
+
const path$1 = require$$1$1;
|
|
61549
61459
|
const { getFileContents, writeToFile } = file;
|
|
61550
61460
|
const {
|
|
61551
61461
|
validateAndBuildRating,
|
|
@@ -61649,7 +61559,7 @@ var dashboardRatingsController = {
|
|
|
61649
61559
|
*/
|
|
61650
61560
|
|
|
61651
61561
|
const fs = require$$0$2;
|
|
61652
|
-
const path = require$$1$
|
|
61562
|
+
const path = require$$1$1;
|
|
61653
61563
|
const AdmZip = require$$3$2;
|
|
61654
61564
|
const { app } = require$$0$1;
|
|
61655
61565
|
|
|
@@ -62454,11 +62364,7 @@ var widgetRegistryController = {
|
|
|
62454
62364
|
*/
|
|
62455
62365
|
|
|
62456
62366
|
const { showDialog, fileChosenError } = dialogController$1;
|
|
62457
|
-
const {
|
|
62458
|
-
isEncryptionAvailable,
|
|
62459
|
-
saveData,
|
|
62460
|
-
getData,
|
|
62461
|
-
} = secureStoreController$1;
|
|
62367
|
+
const { isEncryptionAvailable } = secureStoreController$1;
|
|
62462
62368
|
const {
|
|
62463
62369
|
listWorkspacesForApplication,
|
|
62464
62370
|
saveWorkspaceForApplication,
|
|
@@ -62576,8 +62482,6 @@ var controller = {
|
|
|
62576
62482
|
showDialog,
|
|
62577
62483
|
fileChosenError,
|
|
62578
62484
|
isEncryptionAvailable,
|
|
62579
|
-
saveData,
|
|
62580
|
-
getData,
|
|
62581
62485
|
listWorkspacesForApplication,
|
|
62582
62486
|
saveWorkspaceForApplication,
|
|
62583
62487
|
deleteWorkspaceForApplication,
|
|
@@ -62662,22 +62566,29 @@ var controller = {
|
|
|
62662
62566
|
mcpDashServerController: mcpDashServerController$2,
|
|
62663
62567
|
};
|
|
62664
62568
|
|
|
62665
|
-
const { ipcRenderer: ipcRenderer$
|
|
62666
|
-
const {
|
|
62667
|
-
SECURE_STORE_ENCRYPTION_CHECK,
|
|
62668
|
-
SECURE_STORE_SET_DATA,
|
|
62669
|
-
SECURE_STORE_GET_DATA,
|
|
62670
|
-
} = events$8;
|
|
62569
|
+
const { ipcRenderer: ipcRenderer$p } = require$$0$1;
|
|
62570
|
+
const { SECURE_STORE_ENCRYPTION_CHECK } = events$8;
|
|
62671
62571
|
/**
|
|
62672
62572
|
* secureStoreApi
|
|
62673
|
-
*
|
|
62573
|
+
*
|
|
62574
|
+
* Renderer-facing wrapper for the secure-store IPC channels. Currently
|
|
62575
|
+
* exposes only `isEncryptionAvailable` because that's the only channel
|
|
62576
|
+
* with a wired handler in dash-electron's main process.
|
|
62577
|
+
*
|
|
62578
|
+
* `saveData` / `getData` were removed in this slice — the IPC handlers
|
|
62579
|
+
* for `SECURE_STORE_SET_DATA` / `SECURE_STORE_GET_DATA` were never
|
|
62580
|
+
* registered, so the methods silently no-op'd. Worse, they appeared
|
|
62581
|
+
* usable on `mainApi.secureStore` but had no widgetId scoping, so
|
|
62582
|
+
* adding handlers later would have given every widget unscoped access
|
|
62583
|
+
* to every other widget's keys. If you need a widget-facing storage
|
|
62584
|
+
* API in the future, add a `widgetId` parameter and plumb it through a
|
|
62585
|
+
* per-widget gate (see `electron/security/fsGate.js` for the pattern).
|
|
62586
|
+
* The pin in `secureStoreApi.test.js` will fail loudly if the
|
|
62587
|
+
* unscoped methods reappear without a gate.
|
|
62674
62588
|
*/
|
|
62675
62589
|
const secureStoreApi$2 = {
|
|
62676
62590
|
isEncryptionAvailable: () =>
|
|
62677
|
-
ipcRenderer$
|
|
62678
|
-
saveData: (key, value) =>
|
|
62679
|
-
ipcRenderer$q.invoke(SECURE_STORE_SET_DATA, { key, value }),
|
|
62680
|
-
getData: (key) => ipcRenderer$q.invoke(SECURE_STORE_GET_DATA, { key }),
|
|
62591
|
+
ipcRenderer$p.invoke(SECURE_STORE_ENCRYPTION_CHECK, {}),
|
|
62681
62592
|
};
|
|
62682
62593
|
|
|
62683
62594
|
var secureStoreApi_1 = secureStoreApi$2;
|
|
@@ -62688,7 +62599,7 @@ var secureStoreApi_1 = secureStoreApi$2;
|
|
|
62688
62599
|
* Handle the workspace configuration file
|
|
62689
62600
|
*/
|
|
62690
62601
|
|
|
62691
|
-
const { ipcRenderer: ipcRenderer$
|
|
62602
|
+
const { ipcRenderer: ipcRenderer$o } = require$$0$1;
|
|
62692
62603
|
const {
|
|
62693
62604
|
WORKSPACE_LIST,
|
|
62694
62605
|
WORKSPACE_SAVE,
|
|
@@ -62705,7 +62616,7 @@ const workspaceApi$2 = {
|
|
|
62705
62616
|
*/
|
|
62706
62617
|
listWorkspacesForApplication: (appId) => {
|
|
62707
62618
|
console.log("listWorkspacesForApplication called with appId:", appId);
|
|
62708
|
-
return ipcRenderer$
|
|
62619
|
+
return ipcRenderer$o.invoke(WORKSPACE_LIST, { appId });
|
|
62709
62620
|
},
|
|
62710
62621
|
|
|
62711
62622
|
/**
|
|
@@ -62716,7 +62627,7 @@ const workspaceApi$2 = {
|
|
|
62716
62627
|
* @returns
|
|
62717
62628
|
*/
|
|
62718
62629
|
saveWorkspaceForApplication: (appId, data) =>
|
|
62719
|
-
ipcRenderer$
|
|
62630
|
+
ipcRenderer$o.invoke(WORKSPACE_SAVE, { appId, data }),
|
|
62720
62631
|
|
|
62721
62632
|
/**
|
|
62722
62633
|
* deleteWorkspaceForApplication
|
|
@@ -62726,7 +62637,7 @@ const workspaceApi$2 = {
|
|
|
62726
62637
|
* @returns
|
|
62727
62638
|
*/
|
|
62728
62639
|
deleteWorkspaceForApplication: (appId, workspaceId) =>
|
|
62729
|
-
ipcRenderer$
|
|
62640
|
+
ipcRenderer$o.invoke(WORKSPACE_DELETE, { appId, workspaceId }),
|
|
62730
62641
|
};
|
|
62731
62642
|
|
|
62732
62643
|
var workspaceApi_1 = workspaceApi$2;
|
|
@@ -62738,15 +62649,13 @@ var workspaceApi_1 = workspaceApi$2;
|
|
|
62738
62649
|
*/
|
|
62739
62650
|
|
|
62740
62651
|
// ipcRenderer that must be used to invoke the events
|
|
62741
|
-
const { ipcRenderer: ipcRenderer$
|
|
62652
|
+
const { ipcRenderer: ipcRenderer$n } = require$$0$1;
|
|
62742
62653
|
|
|
62743
|
-
const { LAYOUT_LIST
|
|
62654
|
+
const { LAYOUT_LIST } = events$8;
|
|
62744
62655
|
|
|
62745
62656
|
const layoutApi$2 = {
|
|
62746
62657
|
listLayoutsForApplication: (appId) =>
|
|
62747
|
-
ipcRenderer$
|
|
62748
|
-
saveLayoutForApplication: (appId, data) =>
|
|
62749
|
-
ipcRenderer$o.invoke(LAYOUT_SAVE, { appId, data }),
|
|
62658
|
+
ipcRenderer$n.invoke(LAYOUT_LIST, { appId }),
|
|
62750
62659
|
};
|
|
62751
62660
|
|
|
62752
62661
|
var layoutApi_1 = layoutApi$2;
|
|
@@ -62758,7 +62667,7 @@ var layoutApi_1 = layoutApi$2;
|
|
|
62758
62667
|
*/
|
|
62759
62668
|
|
|
62760
62669
|
// ipcRenderer that must be used to invoke the events
|
|
62761
|
-
const { ipcRenderer: ipcRenderer$
|
|
62670
|
+
const { ipcRenderer: ipcRenderer$m } = require$$0$1;
|
|
62762
62671
|
|
|
62763
62672
|
const {
|
|
62764
62673
|
DATA_JSON_TO_CSV_FILE,
|
|
@@ -62776,7 +62685,7 @@ const {
|
|
|
62776
62685
|
const dataApi$2 = {
|
|
62777
62686
|
// convert a json array of objects to a csv string and save to file
|
|
62778
62687
|
convertJsonToCsvFile: (appId, jsonObject, filename) =>
|
|
62779
|
-
ipcRenderer$
|
|
62688
|
+
ipcRenderer$m.invoke(DATA_JSON_TO_CSV_FILE, {
|
|
62780
62689
|
appId,
|
|
62781
62690
|
jsonObject,
|
|
62782
62691
|
filename,
|
|
@@ -62784,10 +62693,10 @@ const dataApi$2 = {
|
|
|
62784
62693
|
|
|
62785
62694
|
// convert a json array of objects to a csv string and return a string
|
|
62786
62695
|
convertJsonToCsvString: (appId, jsonObject) =>
|
|
62787
|
-
ipcRenderer$
|
|
62696
|
+
ipcRenderer$m.invoke(DATA_JSON_TO_CSV_STRING, { appId, jsonObject }),
|
|
62788
62697
|
|
|
62789
62698
|
parseXMLStream: (filepath, outpath, start) =>
|
|
62790
|
-
ipcRenderer$
|
|
62699
|
+
ipcRenderer$m.invoke(PARSE_XML_STREAM, {
|
|
62791
62700
|
filepath,
|
|
62792
62701
|
outpath,
|
|
62793
62702
|
start,
|
|
@@ -62801,7 +62710,7 @@ const dataApi$2 = {
|
|
|
62801
62710
|
headers = null,
|
|
62802
62711
|
limit = null,
|
|
62803
62712
|
) => {
|
|
62804
|
-
ipcRenderer$
|
|
62713
|
+
ipcRenderer$m.invoke(PARSE_CSV_STREAM, {
|
|
62805
62714
|
filepath,
|
|
62806
62715
|
outpath,
|
|
62807
62716
|
delimiter,
|
|
@@ -62812,15 +62721,15 @@ const dataApi$2 = {
|
|
|
62812
62721
|
},
|
|
62813
62722
|
|
|
62814
62723
|
readLinesFromFile: (filepath, lineCount) => {
|
|
62815
|
-
ipcRenderer$
|
|
62724
|
+
ipcRenderer$m.invoke(READ_LINES, { filepath, lineCount });
|
|
62816
62725
|
},
|
|
62817
62726
|
|
|
62818
62727
|
readJSONFromFile: (filepath, objectCount = null) => {
|
|
62819
|
-
ipcRenderer$
|
|
62728
|
+
ipcRenderer$m.invoke(READ_JSON, { filepath, objectCount });
|
|
62820
62729
|
},
|
|
62821
62730
|
|
|
62822
62731
|
readDataFromURL: (url, toFilepath) => {
|
|
62823
|
-
ipcRenderer$
|
|
62732
|
+
ipcRenderer$m.invoke(READ_DATA_URL, { url, toFilepath });
|
|
62824
62733
|
},
|
|
62825
62734
|
|
|
62826
62735
|
/*
|
|
@@ -62829,7 +62738,7 @@ const dataApi$2 = {
|
|
|
62829
62738
|
* @param {object} returnEmpty the return empty object
|
|
62830
62739
|
*/
|
|
62831
62740
|
saveData: (data, filename, append, returnEmpty, widgetId = null) =>
|
|
62832
|
-
ipcRenderer$
|
|
62741
|
+
ipcRenderer$m.invoke(DATA_SAVE_TO_FILE, {
|
|
62833
62742
|
data,
|
|
62834
62743
|
filename,
|
|
62835
62744
|
append,
|
|
@@ -62847,7 +62756,7 @@ const dataApi$2 = {
|
|
|
62847
62756
|
* gates the gate itself).
|
|
62848
62757
|
*/
|
|
62849
62758
|
readData: (filename, returnEmpty = [], widgetId = null) =>
|
|
62850
|
-
ipcRenderer$
|
|
62759
|
+
ipcRenderer$m.invoke(DATA_READ_FROM_FILE, {
|
|
62851
62760
|
filename,
|
|
62852
62761
|
returnEmpty,
|
|
62853
62762
|
widgetId,
|
|
@@ -62858,7 +62767,7 @@ const dataApi$2 = {
|
|
|
62858
62767
|
* @returns
|
|
62859
62768
|
*/
|
|
62860
62769
|
transformFile: (filepath, outFilepath, mappingFunctionBody, args) => {
|
|
62861
|
-
ipcRenderer$
|
|
62770
|
+
ipcRenderer$m.invoke(TRANSFORM_FILE, {
|
|
62862
62771
|
filepath,
|
|
62863
62772
|
outFilepath,
|
|
62864
62773
|
mappingFunctionBody,
|
|
@@ -62876,7 +62785,7 @@ var dataApi_1 = dataApi$2;
|
|
|
62876
62785
|
*/
|
|
62877
62786
|
|
|
62878
62787
|
// ipcRenderer that must be used to invoke the events
|
|
62879
|
-
const { ipcRenderer: ipcRenderer$
|
|
62788
|
+
const { ipcRenderer: ipcRenderer$l } = require$$0$1;
|
|
62880
62789
|
|
|
62881
62790
|
const {
|
|
62882
62791
|
SETTINGS_GET,
|
|
@@ -62887,14 +62796,14 @@ const {
|
|
|
62887
62796
|
} = events$8;
|
|
62888
62797
|
|
|
62889
62798
|
const settingsApi$2 = {
|
|
62890
|
-
getSettingsForApplication: () => ipcRenderer$
|
|
62799
|
+
getSettingsForApplication: () => ipcRenderer$l.invoke(SETTINGS_GET, {}),
|
|
62891
62800
|
saveSettingsForApplication: (data) =>
|
|
62892
|
-
ipcRenderer$
|
|
62893
|
-
getDataDirectory: () => ipcRenderer$
|
|
62801
|
+
ipcRenderer$l.invoke(SETTINGS_SAVE, { data }),
|
|
62802
|
+
getDataDirectory: () => ipcRenderer$l.invoke(SETTINGS_GET_DATA_DIR, {}),
|
|
62894
62803
|
setDataDirectory: (dataDirectory) =>
|
|
62895
|
-
ipcRenderer$
|
|
62804
|
+
ipcRenderer$l.invoke(SETTINGS_SET_DATA_DIR, { dataDirectory }),
|
|
62896
62805
|
migrateDataDirectory: (oldDirectory, newDirectory) =>
|
|
62897
|
-
ipcRenderer$
|
|
62806
|
+
ipcRenderer$l.invoke(SETTINGS_MIGRATE_DATA_DIR, {
|
|
62898
62807
|
oldDirectory,
|
|
62899
62808
|
newDirectory,
|
|
62900
62809
|
}),
|
|
@@ -62909,7 +62818,7 @@ var settingsApi_1 = settingsApi$2;
|
|
|
62909
62818
|
* Provides file/folder chooser dialogs.
|
|
62910
62819
|
*/
|
|
62911
62820
|
|
|
62912
|
-
const { ipcRenderer: ipcRenderer$
|
|
62821
|
+
const { ipcRenderer: ipcRenderer$k } = require$$0$1;
|
|
62913
62822
|
|
|
62914
62823
|
const { CHOOSE_FILE } = events$8;
|
|
62915
62824
|
|
|
@@ -62922,7 +62831,7 @@ const dialogApi$2 = {
|
|
|
62922
62831
|
* @returns {Promise<string|null>} selected file/folder path, or null if cancelled
|
|
62923
62832
|
*/
|
|
62924
62833
|
chooseFile: (allowFile = true, extensions = ["*"]) => {
|
|
62925
|
-
return ipcRenderer$
|
|
62834
|
+
return ipcRenderer$k.invoke(CHOOSE_FILE, { allowFile, extensions });
|
|
62926
62835
|
},
|
|
62927
62836
|
|
|
62928
62837
|
/**
|
|
@@ -62947,7 +62856,7 @@ const dialogApi$2 = {
|
|
|
62947
62856
|
typeof options.allowFile === "boolean" ? options.allowFile : allowFile;
|
|
62948
62857
|
const resolvedExtensions = options.extensions || extensions;
|
|
62949
62858
|
|
|
62950
|
-
const filePath = await ipcRenderer$
|
|
62859
|
+
const filePath = await ipcRenderer$k.invoke(CHOOSE_FILE, {
|
|
62951
62860
|
allowFile: resolvedAllowFile,
|
|
62952
62861
|
extensions: resolvedExtensions,
|
|
62953
62862
|
});
|
|
@@ -62974,7 +62883,7 @@ var dialogApi_1 = dialogApi$2;
|
|
|
62974
62883
|
* mainApi.widgets.uninstall('Weather')
|
|
62975
62884
|
*/
|
|
62976
62885
|
|
|
62977
|
-
const { ipcRenderer: ipcRenderer$
|
|
62886
|
+
const { ipcRenderer: ipcRenderer$j } = require$$0$1;
|
|
62978
62887
|
|
|
62979
62888
|
const widgetApi$2 = {
|
|
62980
62889
|
/**
|
|
@@ -62983,7 +62892,7 @@ const widgetApi$2 = {
|
|
|
62983
62892
|
*/
|
|
62984
62893
|
list: async () => {
|
|
62985
62894
|
try {
|
|
62986
|
-
return await ipcRenderer$
|
|
62895
|
+
return await ipcRenderer$j.invoke("widget:list");
|
|
62987
62896
|
} catch (error) {
|
|
62988
62897
|
console.error("[WidgetApi] Error listing widgets:", error);
|
|
62989
62898
|
throw error;
|
|
@@ -62997,7 +62906,7 @@ const widgetApi$2 = {
|
|
|
62997
62906
|
*/
|
|
62998
62907
|
get: async (widgetName) => {
|
|
62999
62908
|
try {
|
|
63000
|
-
return await ipcRenderer$
|
|
62909
|
+
return await ipcRenderer$j.invoke("widget:get", widgetName);
|
|
63001
62910
|
} catch (error) {
|
|
63002
62911
|
console.error(`[WidgetApi] Error getting widget ${widgetName}:`, error);
|
|
63003
62912
|
throw error;
|
|
@@ -63028,7 +62937,7 @@ const widgetApi$2 = {
|
|
|
63028
62937
|
console.log(
|
|
63029
62938
|
`[WidgetApi] Installing widget: ${widgetName} from ${downloadUrl}`,
|
|
63030
62939
|
);
|
|
63031
|
-
const config = await ipcRenderer$
|
|
62940
|
+
const config = await ipcRenderer$j.invoke(
|
|
63032
62941
|
"widget:install",
|
|
63033
62942
|
widgetName,
|
|
63034
62943
|
downloadUrl,
|
|
@@ -63068,7 +62977,7 @@ const widgetApi$2 = {
|
|
|
63068
62977
|
console.log(
|
|
63069
62978
|
`[WidgetApi] Installing local widget: ${widgetName} from ${localPath}`,
|
|
63070
62979
|
);
|
|
63071
|
-
const config = await ipcRenderer$
|
|
62980
|
+
const config = await ipcRenderer$j.invoke(
|
|
63072
62981
|
"widget:install-local",
|
|
63073
62982
|
widgetName,
|
|
63074
62983
|
localPath,
|
|
@@ -63099,7 +63008,7 @@ const widgetApi$2 = {
|
|
|
63099
63008
|
loadFolder: async (folderPath) => {
|
|
63100
63009
|
try {
|
|
63101
63010
|
console.log(`[WidgetApi] Loading widgets from folder: ${folderPath}`);
|
|
63102
|
-
const results = await ipcRenderer$
|
|
63011
|
+
const results = await ipcRenderer$j.invoke(
|
|
63103
63012
|
"widget:load-folder",
|
|
63104
63013
|
folderPath,
|
|
63105
63014
|
);
|
|
@@ -63123,7 +63032,7 @@ const widgetApi$2 = {
|
|
|
63123
63032
|
uninstall: async (widgetName) => {
|
|
63124
63033
|
try {
|
|
63125
63034
|
console.log(`[WidgetApi] Uninstalling widget: ${widgetName}`);
|
|
63126
|
-
const success = await ipcRenderer$
|
|
63035
|
+
const success = await ipcRenderer$j.invoke("widget:uninstall", widgetName);
|
|
63127
63036
|
if (success) {
|
|
63128
63037
|
console.log(`[WidgetApi] ✓ Widget ${widgetName} uninstalled`);
|
|
63129
63038
|
} else {
|
|
@@ -63146,7 +63055,7 @@ const widgetApi$2 = {
|
|
|
63146
63055
|
*/
|
|
63147
63056
|
getCachePath: async () => {
|
|
63148
63057
|
try {
|
|
63149
|
-
return await ipcRenderer$
|
|
63058
|
+
return await ipcRenderer$j.invoke("widget:cache-path");
|
|
63150
63059
|
} catch (error) {
|
|
63151
63060
|
console.error("[WidgetApi] Error getting cache path:", error);
|
|
63152
63061
|
throw error;
|
|
@@ -63160,7 +63069,7 @@ const widgetApi$2 = {
|
|
|
63160
63069
|
*/
|
|
63161
63070
|
getStoragePath: async () => {
|
|
63162
63071
|
try {
|
|
63163
|
-
return await ipcRenderer$
|
|
63072
|
+
return await ipcRenderer$j.invoke("widget:storage-path");
|
|
63164
63073
|
} catch (error) {
|
|
63165
63074
|
console.error("[WidgetApi] Error getting storage path:", error);
|
|
63166
63075
|
throw error;
|
|
@@ -63177,7 +63086,7 @@ const widgetApi$2 = {
|
|
|
63177
63086
|
setStoragePath: async (customPath) => {
|
|
63178
63087
|
try {
|
|
63179
63088
|
console.log(`[WidgetApi] Setting storage path to: ${customPath}`);
|
|
63180
|
-
const result = await ipcRenderer$
|
|
63089
|
+
const result = await ipcRenderer$j.invoke(
|
|
63181
63090
|
"widget:set-storage-path",
|
|
63182
63091
|
customPath,
|
|
63183
63092
|
);
|
|
@@ -63199,7 +63108,7 @@ const widgetApi$2 = {
|
|
|
63199
63108
|
*/
|
|
63200
63109
|
getComponentConfigs: async () => {
|
|
63201
63110
|
try {
|
|
63202
|
-
return await ipcRenderer$
|
|
63111
|
+
return await ipcRenderer$j.invoke("widget:get-component-configs");
|
|
63203
63112
|
} catch (error) {
|
|
63204
63113
|
console.error("[WidgetApi] Error getting component configs:", error);
|
|
63205
63114
|
return [];
|
|
@@ -63214,7 +63123,7 @@ const widgetApi$2 = {
|
|
|
63214
63123
|
*/
|
|
63215
63124
|
readBundle: async (widgetName) => {
|
|
63216
63125
|
try {
|
|
63217
|
-
return await ipcRenderer$
|
|
63126
|
+
return await ipcRenderer$j.invoke("widget:read-bundle", widgetName);
|
|
63218
63127
|
} catch (error) {
|
|
63219
63128
|
console.error(
|
|
63220
63129
|
`[WidgetApi] Error reading bundle for ${widgetName}:`,
|
|
@@ -63233,7 +63142,7 @@ const widgetApi$2 = {
|
|
|
63233
63142
|
*/
|
|
63234
63143
|
readSources: async (widgetName, componentName) => {
|
|
63235
63144
|
try {
|
|
63236
|
-
return await ipcRenderer$
|
|
63145
|
+
return await ipcRenderer$j.invoke("widget:read-sources", {
|
|
63237
63146
|
widgetName,
|
|
63238
63147
|
componentName,
|
|
63239
63148
|
});
|
|
@@ -63253,7 +63162,7 @@ const widgetApi$2 = {
|
|
|
63253
63162
|
*/
|
|
63254
63163
|
readAllBundles: async () => {
|
|
63255
63164
|
try {
|
|
63256
|
-
return await ipcRenderer$
|
|
63165
|
+
return await ipcRenderer$j.invoke("widget:read-all-bundles");
|
|
63257
63166
|
} catch (error) {
|
|
63258
63167
|
console.error("[WidgetApi] Error reading all bundles:", error);
|
|
63259
63168
|
return [];
|
|
@@ -63273,7 +63182,7 @@ const widgetApi$2 = {
|
|
|
63273
63182
|
* });
|
|
63274
63183
|
*/
|
|
63275
63184
|
onInstalled: (callback) => {
|
|
63276
|
-
ipcRenderer$
|
|
63185
|
+
ipcRenderer$j.on("widget:installed", (event, data) => {
|
|
63277
63186
|
callback(data);
|
|
63278
63187
|
});
|
|
63279
63188
|
},
|
|
@@ -63290,7 +63199,7 @@ const widgetApi$2 = {
|
|
|
63290
63199
|
* });
|
|
63291
63200
|
*/
|
|
63292
63201
|
onUninstalled: (callback) => {
|
|
63293
|
-
ipcRenderer$
|
|
63202
|
+
ipcRenderer$j.on("widget:uninstalled", (event, data) => {
|
|
63294
63203
|
callback(data);
|
|
63295
63204
|
});
|
|
63296
63205
|
},
|
|
@@ -63308,7 +63217,7 @@ const widgetApi$2 = {
|
|
|
63308
63217
|
* });
|
|
63309
63218
|
*/
|
|
63310
63219
|
onLoaded: (callback) => {
|
|
63311
|
-
ipcRenderer$
|
|
63220
|
+
ipcRenderer$j.on("widgets:loaded", (event, data) => {
|
|
63312
63221
|
callback(data);
|
|
63313
63222
|
});
|
|
63314
63223
|
},
|
|
@@ -63319,7 +63228,7 @@ const widgetApi$2 = {
|
|
|
63319
63228
|
* @param {Function} callback - The callback to remove
|
|
63320
63229
|
*/
|
|
63321
63230
|
removeInstalledListener: (callback) => {
|
|
63322
|
-
ipcRenderer$
|
|
63231
|
+
ipcRenderer$j.removeListener("widget:installed", callback);
|
|
63323
63232
|
},
|
|
63324
63233
|
|
|
63325
63234
|
/**
|
|
@@ -63328,7 +63237,7 @@ const widgetApi$2 = {
|
|
|
63328
63237
|
* @param {Function} callback - The callback to remove
|
|
63329
63238
|
*/
|
|
63330
63239
|
removeUninstalledListener: (callback) => {
|
|
63331
|
-
ipcRenderer$
|
|
63240
|
+
ipcRenderer$j.removeListener("widget:uninstalled", callback);
|
|
63332
63241
|
},
|
|
63333
63242
|
|
|
63334
63243
|
/**
|
|
@@ -63337,7 +63246,7 @@ const widgetApi$2 = {
|
|
|
63337
63246
|
* @param {Function} callback - The callback to remove
|
|
63338
63247
|
*/
|
|
63339
63248
|
removeLoadedListener: (callback) => {
|
|
63340
|
-
ipcRenderer$
|
|
63249
|
+
ipcRenderer$j.removeListener("widgets:loaded", callback);
|
|
63341
63250
|
},
|
|
63342
63251
|
};
|
|
63343
63252
|
|
|
@@ -63350,7 +63259,7 @@ var widgetApi_1 = widgetApi$2;
|
|
|
63350
63259
|
* Communicates with main process via IPC to handle encryption and file storage
|
|
63351
63260
|
*/
|
|
63352
63261
|
|
|
63353
|
-
const { ipcRenderer: ipcRenderer$
|
|
63262
|
+
const { ipcRenderer: ipcRenderer$i } = require$$0$1;
|
|
63354
63263
|
const {
|
|
63355
63264
|
PROVIDER_SAVE,
|
|
63356
63265
|
PROVIDER_LIST,
|
|
@@ -63388,7 +63297,7 @@ const providerApi$2 = {
|
|
|
63388
63297
|
// value, preserve what's on disk" from "caller explicitly unset it".
|
|
63389
63298
|
isDefaultForType = undefined,
|
|
63390
63299
|
) =>
|
|
63391
|
-
ipcRenderer$
|
|
63300
|
+
ipcRenderer$i.invoke(PROVIDER_SAVE, {
|
|
63392
63301
|
appId,
|
|
63393
63302
|
providerName,
|
|
63394
63303
|
providerType,
|
|
@@ -63408,7 +63317,7 @@ const providerApi$2 = {
|
|
|
63408
63317
|
* @param {String} appId - the appId specified in the dash initialization
|
|
63409
63318
|
* @returns {Promise<Array>} Array of provider objects with name, type, credentials
|
|
63410
63319
|
*/
|
|
63411
|
-
listProviders: (appId) => ipcRenderer$
|
|
63320
|
+
listProviders: (appId) => ipcRenderer$i.invoke(PROVIDER_LIST, { appId }),
|
|
63412
63321
|
|
|
63413
63322
|
/**
|
|
63414
63323
|
* getProvider
|
|
@@ -63420,7 +63329,7 @@ const providerApi$2 = {
|
|
|
63420
63329
|
* @returns {Promise<Object>} Provider object with name, type, credentials
|
|
63421
63330
|
*/
|
|
63422
63331
|
getProvider: (appId, providerName) =>
|
|
63423
|
-
ipcRenderer$
|
|
63332
|
+
ipcRenderer$i.invoke(PROVIDER_GET, { appId, providerName }),
|
|
63424
63333
|
|
|
63425
63334
|
/**
|
|
63426
63335
|
* deleteProvider
|
|
@@ -63432,7 +63341,7 @@ const providerApi$2 = {
|
|
|
63432
63341
|
* @returns {Promise}
|
|
63433
63342
|
*/
|
|
63434
63343
|
deleteProvider: (appId, providerName) =>
|
|
63435
|
-
ipcRenderer$
|
|
63344
|
+
ipcRenderer$i.invoke(PROVIDER_DELETE, { appId, providerName }),
|
|
63436
63345
|
|
|
63437
63346
|
/**
|
|
63438
63347
|
* listProvidersForApplication
|
|
@@ -63442,14 +63351,14 @@ const providerApi$2 = {
|
|
|
63442
63351
|
* @param {String} appId - the appId specified in the dash initialization
|
|
63443
63352
|
*/
|
|
63444
63353
|
listProvidersForApplication: (appId) => {
|
|
63445
|
-
ipcRenderer$
|
|
63354
|
+
ipcRenderer$i
|
|
63446
63355
|
.invoke(PROVIDER_LIST, { appId })
|
|
63447
63356
|
.then((result) => {
|
|
63448
63357
|
// Emit the event for ElectronDashboardApi to listen to
|
|
63449
|
-
ipcRenderer$
|
|
63358
|
+
ipcRenderer$i.send("PROVIDER_LIST_COMPLETE", result);
|
|
63450
63359
|
})
|
|
63451
63360
|
.catch((error) => {
|
|
63452
|
-
ipcRenderer$
|
|
63361
|
+
ipcRenderer$i.send("PROVIDER_LIST_ERROR", {
|
|
63453
63362
|
error: error.message,
|
|
63454
63363
|
});
|
|
63455
63364
|
});
|
|
@@ -63466,7 +63375,7 @@ const providerApi$2 = {
|
|
|
63466
63375
|
providerType,
|
|
63467
63376
|
credentials,
|
|
63468
63377
|
) => {
|
|
63469
|
-
ipcRenderer$
|
|
63378
|
+
ipcRenderer$i
|
|
63470
63379
|
.invoke(PROVIDER_SAVE, {
|
|
63471
63380
|
appId,
|
|
63472
63381
|
providerName,
|
|
@@ -63474,10 +63383,10 @@ const providerApi$2 = {
|
|
|
63474
63383
|
credentials,
|
|
63475
63384
|
})
|
|
63476
63385
|
.then((result) => {
|
|
63477
|
-
ipcRenderer$
|
|
63386
|
+
ipcRenderer$i.send("PROVIDER_SAVE_COMPLETE", result);
|
|
63478
63387
|
})
|
|
63479
63388
|
.catch((error) => {
|
|
63480
|
-
ipcRenderer$
|
|
63389
|
+
ipcRenderer$i.send("PROVIDER_SAVE_ERROR", {
|
|
63481
63390
|
error: error.message,
|
|
63482
63391
|
});
|
|
63483
63392
|
});
|
|
@@ -63489,13 +63398,13 @@ const providerApi$2 = {
|
|
|
63489
63398
|
* Event-listener-based version for use with ElectronDashboardApi
|
|
63490
63399
|
*/
|
|
63491
63400
|
getProviderForApplication: (appId, providerName) => {
|
|
63492
|
-
ipcRenderer$
|
|
63401
|
+
ipcRenderer$i
|
|
63493
63402
|
.invoke(PROVIDER_GET, { appId, providerName })
|
|
63494
63403
|
.then((result) => {
|
|
63495
|
-
ipcRenderer$
|
|
63404
|
+
ipcRenderer$i.send("PROVIDER_GET_COMPLETE", result);
|
|
63496
63405
|
})
|
|
63497
63406
|
.catch((error) => {
|
|
63498
|
-
ipcRenderer$
|
|
63407
|
+
ipcRenderer$i.send("PROVIDER_GET_ERROR", {
|
|
63499
63408
|
error: error.message,
|
|
63500
63409
|
});
|
|
63501
63410
|
});
|
|
@@ -63507,13 +63416,13 @@ const providerApi$2 = {
|
|
|
63507
63416
|
* Event-listener-based version for use with ElectronDashboardApi
|
|
63508
63417
|
*/
|
|
63509
63418
|
deleteProviderForApplication: (appId, providerName) => {
|
|
63510
|
-
ipcRenderer$
|
|
63419
|
+
ipcRenderer$i
|
|
63511
63420
|
.invoke(PROVIDER_DELETE, { appId, providerName })
|
|
63512
63421
|
.then((result) => {
|
|
63513
|
-
ipcRenderer$
|
|
63422
|
+
ipcRenderer$i.send("PROVIDER_DELETE_COMPLETE", result);
|
|
63514
63423
|
})
|
|
63515
63424
|
.catch((error) => {
|
|
63516
|
-
ipcRenderer$
|
|
63425
|
+
ipcRenderer$i.send("PROVIDER_DELETE_ERROR", {
|
|
63517
63426
|
error: error.message,
|
|
63518
63427
|
});
|
|
63519
63428
|
});
|
|
@@ -63529,7 +63438,7 @@ var providerApi_1 = providerApi$2;
|
|
|
63529
63438
|
* Communicates with main process via IPC to manage MCP server lifecycle.
|
|
63530
63439
|
*/
|
|
63531
63440
|
|
|
63532
|
-
const { ipcRenderer: ipcRenderer$
|
|
63441
|
+
const { ipcRenderer: ipcRenderer$h } = require$$0$1;
|
|
63533
63442
|
const {
|
|
63534
63443
|
MCP_START_SERVER,
|
|
63535
63444
|
MCP_STOP_SERVER,
|
|
@@ -63568,7 +63477,7 @@ const mcpApi$2 = {
|
|
|
63568
63477
|
workspaceId = null,
|
|
63569
63478
|
pathScope = null,
|
|
63570
63479
|
) =>
|
|
63571
|
-
ipcRenderer$
|
|
63480
|
+
ipcRenderer$h.invoke(MCP_START_SERVER, {
|
|
63572
63481
|
serverName,
|
|
63573
63482
|
mcpConfig,
|
|
63574
63483
|
credentials,
|
|
@@ -63585,7 +63494,7 @@ const mcpApi$2 = {
|
|
|
63585
63494
|
* @returns {Promise<{ success, serverName } | { error, message }>}
|
|
63586
63495
|
*/
|
|
63587
63496
|
stopServer: (serverName, workspaceId = null) =>
|
|
63588
|
-
ipcRenderer$
|
|
63497
|
+
ipcRenderer$h.invoke(MCP_STOP_SERVER, { serverName, workspaceId }),
|
|
63589
63498
|
|
|
63590
63499
|
/**
|
|
63591
63500
|
* listTools
|
|
@@ -63596,7 +63505,7 @@ const mcpApi$2 = {
|
|
|
63596
63505
|
* @returns {Promise<{ tools } | { error, message }>}
|
|
63597
63506
|
*/
|
|
63598
63507
|
listTools: (serverName, workspaceId = null) =>
|
|
63599
|
-
ipcRenderer$
|
|
63508
|
+
ipcRenderer$h.invoke(MCP_LIST_TOOLS, { serverName, workspaceId }),
|
|
63600
63509
|
|
|
63601
63510
|
/**
|
|
63602
63511
|
* callTool
|
|
@@ -63624,7 +63533,7 @@ const mcpApi$2 = {
|
|
|
63624
63533
|
widgetId = null,
|
|
63625
63534
|
workspaceId = null,
|
|
63626
63535
|
) =>
|
|
63627
|
-
ipcRenderer$
|
|
63536
|
+
ipcRenderer$h.invoke(MCP_CALL_TOOL, {
|
|
63628
63537
|
serverName,
|
|
63629
63538
|
toolName,
|
|
63630
63539
|
args,
|
|
@@ -63642,7 +63551,7 @@ const mcpApi$2 = {
|
|
|
63642
63551
|
* @returns {Promise<{ resources } | { error, message }>}
|
|
63643
63552
|
*/
|
|
63644
63553
|
listResources: (serverName, workspaceId = null) =>
|
|
63645
|
-
ipcRenderer$
|
|
63554
|
+
ipcRenderer$h.invoke(MCP_LIST_RESOURCES, { serverName, workspaceId }),
|
|
63646
63555
|
|
|
63647
63556
|
/**
|
|
63648
63557
|
* readResource
|
|
@@ -63654,7 +63563,7 @@ const mcpApi$2 = {
|
|
|
63654
63563
|
* @returns {Promise<{ resource } | { error, message }>}
|
|
63655
63564
|
*/
|
|
63656
63565
|
readResource: (serverName, uri, workspaceId = null) =>
|
|
63657
|
-
ipcRenderer$
|
|
63566
|
+
ipcRenderer$h.invoke(MCP_READ_RESOURCE, { serverName, uri, workspaceId }),
|
|
63658
63567
|
|
|
63659
63568
|
/**
|
|
63660
63569
|
* getServerStatus
|
|
@@ -63665,7 +63574,7 @@ const mcpApi$2 = {
|
|
|
63665
63574
|
* @returns {Promise<{ status, tools, error }>}
|
|
63666
63575
|
*/
|
|
63667
63576
|
getServerStatus: (serverName, workspaceId = null) =>
|
|
63668
|
-
ipcRenderer$
|
|
63577
|
+
ipcRenderer$h.invoke(MCP_SERVER_STATUS, { serverName, workspaceId }),
|
|
63669
63578
|
|
|
63670
63579
|
/**
|
|
63671
63580
|
* getCatalog
|
|
@@ -63673,7 +63582,7 @@ const mcpApi$2 = {
|
|
|
63673
63582
|
*
|
|
63674
63583
|
* @returns {Promise<{ catalog } | { error, message }>}
|
|
63675
63584
|
*/
|
|
63676
|
-
getCatalog: () => ipcRenderer$
|
|
63585
|
+
getCatalog: () => ipcRenderer$h.invoke(MCP_GET_CATALOG),
|
|
63677
63586
|
|
|
63678
63587
|
/**
|
|
63679
63588
|
* getKnownExternalCatalog
|
|
@@ -63685,7 +63594,7 @@ const mcpApi$2 = {
|
|
|
63685
63594
|
*
|
|
63686
63595
|
* @returns {Promise<{ success, servers } | { error, message, servers }>}
|
|
63687
63596
|
*/
|
|
63688
|
-
getKnownExternalCatalog: () => ipcRenderer$
|
|
63597
|
+
getKnownExternalCatalog: () => ipcRenderer$h.invoke(MCP_GET_KNOWN_EXTERNAL),
|
|
63689
63598
|
|
|
63690
63599
|
/**
|
|
63691
63600
|
* onInstallKnownExternalConfirm
|
|
@@ -63699,9 +63608,9 @@ const mcpApi$2 = {
|
|
|
63699
63608
|
*/
|
|
63700
63609
|
onInstallKnownExternalConfirm: (callback) => {
|
|
63701
63610
|
const handler = (_e, data) => callback(data);
|
|
63702
|
-
ipcRenderer$
|
|
63611
|
+
ipcRenderer$h.on(MCP_INSTALL_KNOWN_EXTERNAL_CONFIRM$1, handler);
|
|
63703
63612
|
return () =>
|
|
63704
|
-
ipcRenderer$
|
|
63613
|
+
ipcRenderer$h.removeListener(MCP_INSTALL_KNOWN_EXTERNAL_CONFIRM$1, handler);
|
|
63705
63614
|
},
|
|
63706
63615
|
|
|
63707
63616
|
/**
|
|
@@ -63712,7 +63621,7 @@ const mcpApi$2 = {
|
|
|
63712
63621
|
* @param {{ confirmed: boolean, credentials?: object, error?: string }} result
|
|
63713
63622
|
*/
|
|
63714
63623
|
sendInstallKnownExternalResult: (requestId, result) =>
|
|
63715
|
-
ipcRenderer$
|
|
63624
|
+
ipcRenderer$h.send(MCP_INSTALL_KNOWN_EXTERNAL_RESULT$1, { requestId, result }),
|
|
63716
63625
|
|
|
63717
63626
|
/**
|
|
63718
63627
|
* runAuth
|
|
@@ -63724,7 +63633,7 @@ const mcpApi$2 = {
|
|
|
63724
63633
|
* @returns {Promise<{ success } | { error, message }>}
|
|
63725
63634
|
*/
|
|
63726
63635
|
runAuth: (mcpConfig, credentials, authCommand) =>
|
|
63727
|
-
ipcRenderer$
|
|
63636
|
+
ipcRenderer$h.invoke(MCP_RUN_AUTH, { mcpConfig, credentials, authCommand }),
|
|
63728
63637
|
};
|
|
63729
63638
|
|
|
63730
63639
|
var mcpApi_1 = mcpApi$2;
|
|
@@ -63742,7 +63651,7 @@ var mcpApi_1 = mcpApi$2;
|
|
|
63742
63651
|
* mainApi.registry.checkUpdates([{ name: "weather-widgets", version: "1.0.0" }])
|
|
63743
63652
|
*/
|
|
63744
63653
|
|
|
63745
|
-
const { ipcRenderer: ipcRenderer$
|
|
63654
|
+
const { ipcRenderer: ipcRenderer$g } = require$$0$1;
|
|
63746
63655
|
|
|
63747
63656
|
const registryApi$2 = {
|
|
63748
63657
|
/**
|
|
@@ -63752,7 +63661,7 @@ const registryApi$2 = {
|
|
|
63752
63661
|
*/
|
|
63753
63662
|
fetchIndex: async (forceRefresh = false) => {
|
|
63754
63663
|
try {
|
|
63755
|
-
return await ipcRenderer$
|
|
63664
|
+
return await ipcRenderer$g.invoke("registry:fetch-index", forceRefresh);
|
|
63756
63665
|
} catch (error) {
|
|
63757
63666
|
console.error("[RegistryApi] Error fetching index:", error);
|
|
63758
63667
|
throw error;
|
|
@@ -63767,7 +63676,7 @@ const registryApi$2 = {
|
|
|
63767
63676
|
*/
|
|
63768
63677
|
search: async (query = "", filters = {}) => {
|
|
63769
63678
|
try {
|
|
63770
|
-
return await ipcRenderer$
|
|
63679
|
+
return await ipcRenderer$g.invoke("registry:search", query, filters);
|
|
63771
63680
|
} catch (error) {
|
|
63772
63681
|
console.error("[RegistryApi] Error searching registry:", error);
|
|
63773
63682
|
throw error;
|
|
@@ -63781,7 +63690,7 @@ const registryApi$2 = {
|
|
|
63781
63690
|
*/
|
|
63782
63691
|
getPackage: async (packageName) => {
|
|
63783
63692
|
try {
|
|
63784
|
-
return await ipcRenderer$
|
|
63693
|
+
return await ipcRenderer$g.invoke("registry:get-package", packageName);
|
|
63785
63694
|
} catch (error) {
|
|
63786
63695
|
console.error(
|
|
63787
63696
|
`[RegistryApi] Error getting package ${packageName}:`,
|
|
@@ -63798,7 +63707,7 @@ const registryApi$2 = {
|
|
|
63798
63707
|
*/
|
|
63799
63708
|
checkUpdates: async (installedWidgets = []) => {
|
|
63800
63709
|
try {
|
|
63801
|
-
return await ipcRenderer$
|
|
63710
|
+
return await ipcRenderer$g.invoke(
|
|
63802
63711
|
"registry:check-updates",
|
|
63803
63712
|
installedWidgets,
|
|
63804
63713
|
);
|
|
@@ -63816,7 +63725,7 @@ const registryApi$2 = {
|
|
|
63816
63725
|
*/
|
|
63817
63726
|
searchDashboards: async (query = "", filters = {}) => {
|
|
63818
63727
|
try {
|
|
63819
|
-
return await ipcRenderer$
|
|
63728
|
+
return await ipcRenderer$g.invoke(
|
|
63820
63729
|
"registry:search-dashboards",
|
|
63821
63730
|
query,
|
|
63822
63731
|
filters,
|
|
@@ -63835,7 +63744,7 @@ const registryApi$2 = {
|
|
|
63835
63744
|
*/
|
|
63836
63745
|
searchThemes: async (query = "", filters = {}) => {
|
|
63837
63746
|
try {
|
|
63838
|
-
return await ipcRenderer$
|
|
63747
|
+
return await ipcRenderer$g.invoke("registry:search-themes", query, filters);
|
|
63839
63748
|
} catch (error) {
|
|
63840
63749
|
console.error("[RegistryApi] Error searching themes:", error);
|
|
63841
63750
|
throw error;
|
|
@@ -63857,7 +63766,7 @@ const registryApi$2 = {
|
|
|
63857
63766
|
*/
|
|
63858
63767
|
publishWidget: async (appId, packageId, options = {}) => {
|
|
63859
63768
|
try {
|
|
63860
|
-
return await ipcRenderer$
|
|
63769
|
+
return await ipcRenderer$g.invoke("registry:publish-widget", {
|
|
63861
63770
|
appId,
|
|
63862
63771
|
packageId,
|
|
63863
63772
|
options,
|
|
@@ -63878,7 +63787,7 @@ const registryApi$2 = {
|
|
|
63878
63787
|
*/
|
|
63879
63788
|
inspectWidgetPackage: async (packageId) => {
|
|
63880
63789
|
try {
|
|
63881
|
-
return await ipcRenderer$
|
|
63790
|
+
return await ipcRenderer$g.invoke("registry:inspect-widget-package", {
|
|
63882
63791
|
packageId,
|
|
63883
63792
|
});
|
|
63884
63793
|
} catch (error) {
|
|
@@ -63899,7 +63808,7 @@ const registryApi$2 = {
|
|
|
63899
63808
|
*/
|
|
63900
63809
|
scanWidgetDefaults: async (packageId) => {
|
|
63901
63810
|
try {
|
|
63902
|
-
return await ipcRenderer$
|
|
63811
|
+
return await ipcRenderer$g.invoke("registry:scan-widget-defaults", {
|
|
63903
63812
|
packageId,
|
|
63904
63813
|
});
|
|
63905
63814
|
} catch (error) {
|
|
@@ -63922,7 +63831,7 @@ const registryApi$2 = {
|
|
|
63922
63831
|
*/
|
|
63923
63832
|
previewFetch: async (packageName, componentName = null) => {
|
|
63924
63833
|
try {
|
|
63925
|
-
return await ipcRenderer$
|
|
63834
|
+
return await ipcRenderer$g.invoke(
|
|
63926
63835
|
"registry:preview-fetch",
|
|
63927
63836
|
packageName,
|
|
63928
63837
|
componentName,
|
|
@@ -63945,7 +63854,7 @@ var registryApi_1 = registryApi$2;
|
|
|
63945
63854
|
* Handle the theme configuration file
|
|
63946
63855
|
*/
|
|
63947
63856
|
|
|
63948
|
-
const { ipcRenderer: ipcRenderer$
|
|
63857
|
+
const { ipcRenderer: ipcRenderer$f } = require$$0$1;
|
|
63949
63858
|
|
|
63950
63859
|
const {
|
|
63951
63860
|
THEME_LIST,
|
|
@@ -63958,17 +63867,17 @@ const {
|
|
|
63958
63867
|
|
|
63959
63868
|
const themeApi$2 = {
|
|
63960
63869
|
listThemesForApplication: (appId) =>
|
|
63961
|
-
ipcRenderer$
|
|
63870
|
+
ipcRenderer$f.invoke(THEME_LIST, { appId }),
|
|
63962
63871
|
saveThemeForApplication: (appId, themeName, themeObject) =>
|
|
63963
|
-
ipcRenderer$
|
|
63872
|
+
ipcRenderer$f.invoke(THEME_SAVE, { appId, themeName, themeObject }),
|
|
63964
63873
|
deleteThemeForApplication: (appId, themeKey) =>
|
|
63965
|
-
ipcRenderer$
|
|
63874
|
+
ipcRenderer$f.invoke(THEME_DELETE, { appId, themeKey }),
|
|
63966
63875
|
publishTheme: (appId, themeKey, options) =>
|
|
63967
|
-
ipcRenderer$
|
|
63876
|
+
ipcRenderer$f.invoke(THEME_PUBLISH, { appId, themeKey, options }),
|
|
63968
63877
|
installThemeFromRegistry: (appId, packageName) =>
|
|
63969
|
-
ipcRenderer$
|
|
63878
|
+
ipcRenderer$f.invoke(THEME_INSTALL_FROM_REGISTRY, { appId, packageName }),
|
|
63970
63879
|
getThemePublishPreview: (appId, themeKey) =>
|
|
63971
|
-
ipcRenderer$
|
|
63880
|
+
ipcRenderer$f.invoke(THEME_PUBLISH_PREVIEW, { appId, themeKey }),
|
|
63972
63881
|
};
|
|
63973
63882
|
|
|
63974
63883
|
var themeApi_1 = themeApi$2;
|
|
@@ -63980,12 +63889,11 @@ var themeApi_1 = themeApi$2;
|
|
|
63980
63889
|
*/
|
|
63981
63890
|
|
|
63982
63891
|
// ipcRenderer that must be used to invoke the events
|
|
63983
|
-
const { ipcRenderer: ipcRenderer$
|
|
63892
|
+
const { ipcRenderer: ipcRenderer$e } = require$$0$1;
|
|
63984
63893
|
|
|
63985
63894
|
const {
|
|
63986
63895
|
ALGOLIA_LIST_INDICES,
|
|
63987
63896
|
ALGOLIA_ANALYTICS_FOR_QUERY,
|
|
63988
|
-
ALGOLIA_SAVE_SYNONYMS,
|
|
63989
63897
|
ALGOLIA_PARTIAL_UPDATE_OBJECTS,
|
|
63990
63898
|
ALGOLIA_CREATE_BATCH,
|
|
63991
63899
|
ALGOLIA_BROWSE_OBJECTS,
|
|
@@ -63994,10 +63902,10 @@ const {
|
|
|
63994
63902
|
|
|
63995
63903
|
const algoliaApi$2 = {
|
|
63996
63904
|
listIndices: (application) =>
|
|
63997
|
-
ipcRenderer$
|
|
63905
|
+
ipcRenderer$e.invoke(ALGOLIA_LIST_INDICES, application),
|
|
63998
63906
|
|
|
63999
63907
|
browseObjects: (appId, apiKey, indexName) => {
|
|
64000
|
-
ipcRenderer$
|
|
63908
|
+
ipcRenderer$e.invoke(ALGOLIA_BROWSE_OBJECTS, {
|
|
64001
63909
|
appId,
|
|
64002
63910
|
apiKey,
|
|
64003
63911
|
indexName,
|
|
@@ -64005,10 +63913,8 @@ const algoliaApi$2 = {
|
|
|
64005
63913
|
});
|
|
64006
63914
|
},
|
|
64007
63915
|
|
|
64008
|
-
saveSynonyms: () => ipcRenderer$f.invoke(ALGOLIA_SAVE_SYNONYMS, {}),
|
|
64009
|
-
|
|
64010
63916
|
getAnalyticsForQuery: (application, indexName, query) =>
|
|
64011
|
-
ipcRenderer$
|
|
63917
|
+
ipcRenderer$e.invoke(ALGOLIA_ANALYTICS_FOR_QUERY, {
|
|
64012
63918
|
application,
|
|
64013
63919
|
indexName,
|
|
64014
63920
|
query,
|
|
@@ -64021,7 +63927,7 @@ const algoliaApi$2 = {
|
|
|
64021
63927
|
dir,
|
|
64022
63928
|
createIfNotExists = false,
|
|
64023
63929
|
) =>
|
|
64024
|
-
ipcRenderer$
|
|
63930
|
+
ipcRenderer$e.invoke(ALGOLIA_PARTIAL_UPDATE_OBJECTS, {
|
|
64025
63931
|
appId,
|
|
64026
63932
|
apiKey,
|
|
64027
63933
|
indexName,
|
|
@@ -64030,7 +63936,7 @@ const algoliaApi$2 = {
|
|
|
64030
63936
|
}),
|
|
64031
63937
|
|
|
64032
63938
|
createBatchesFromFile: (filepath, batchFilepath, batchSize) => {
|
|
64033
|
-
ipcRenderer$
|
|
63939
|
+
ipcRenderer$e.invoke(ALGOLIA_CREATE_BATCH, {
|
|
64034
63940
|
filepath,
|
|
64035
63941
|
batchFilepath,
|
|
64036
63942
|
batchSize,
|
|
@@ -64038,7 +63944,7 @@ const algoliaApi$2 = {
|
|
|
64038
63944
|
},
|
|
64039
63945
|
|
|
64040
63946
|
browseObjectsToFile: (appId, apiKey, indexName, toFilename, query = "") => {
|
|
64041
|
-
ipcRenderer$
|
|
63947
|
+
ipcRenderer$e.invoke(ALGOLIA_BROWSE_OBJECTS, {
|
|
64042
63948
|
appId,
|
|
64043
63949
|
apiKey,
|
|
64044
63950
|
indexName,
|
|
@@ -64048,7 +63954,7 @@ const algoliaApi$2 = {
|
|
|
64048
63954
|
},
|
|
64049
63955
|
|
|
64050
63956
|
search: (appId, apiKey, indexName, query = "", options = {}) =>
|
|
64051
|
-
ipcRenderer$
|
|
63957
|
+
ipcRenderer$e.invoke(ALGOLIA_SEARCH, {
|
|
64052
63958
|
appId,
|
|
64053
63959
|
apiKey,
|
|
64054
63960
|
indexName,
|
|
@@ -64063,14 +63969,14 @@ var algoliaApi_1 = algoliaApi$2;
|
|
|
64063
63969
|
* openAI
|
|
64064
63970
|
*/
|
|
64065
63971
|
|
|
64066
|
-
const { ipcRenderer: ipcRenderer$
|
|
63972
|
+
const { ipcRenderer: ipcRenderer$d } = require$$0$1;
|
|
64067
63973
|
|
|
64068
63974
|
const { OPENAI_DESCRIBE_IMAGE } = openaiEvents$1;
|
|
64069
63975
|
|
|
64070
63976
|
const openaiApi$2 = {
|
|
64071
63977
|
// convert a json array of objects to a csv string and save to file
|
|
64072
63978
|
describeImage: (imageUrl, apiKey, prompt = "What's in this image?") =>
|
|
64073
|
-
ipcRenderer$
|
|
63979
|
+
ipcRenderer$d.invoke(OPENAI_DESCRIBE_IMAGE, { imageUrl, apiKey, prompt }),
|
|
64074
63980
|
};
|
|
64075
63981
|
|
|
64076
63982
|
var openaiApi_1 = openaiApi$2;
|
|
@@ -64081,14 +63987,14 @@ var openaiApi_1 = openaiApi$2;
|
|
|
64081
63987
|
*/
|
|
64082
63988
|
|
|
64083
63989
|
// ipcRenderer that must be used to invoke the events
|
|
64084
|
-
const { ipcRenderer: ipcRenderer$
|
|
63990
|
+
const { ipcRenderer: ipcRenderer$c } = require$$0$1;
|
|
64085
63991
|
|
|
64086
63992
|
const { MENU_ITEMS_SAVE, MENU_ITEMS_LIST } = events$8;
|
|
64087
63993
|
|
|
64088
63994
|
const menuItemsApi$2 = {
|
|
64089
63995
|
saveMenuItem: (appId, menuItem) =>
|
|
64090
|
-
ipcRenderer$
|
|
64091
|
-
listMenuItems: (appId) => ipcRenderer$
|
|
63996
|
+
ipcRenderer$c.invoke(MENU_ITEMS_SAVE, { appId, menuItem }),
|
|
63997
|
+
listMenuItems: (appId) => ipcRenderer$c.invoke(MENU_ITEMS_LIST, { appId }),
|
|
64092
63998
|
};
|
|
64093
63999
|
|
|
64094
64000
|
var menuItemsApi_1 = menuItemsApi$2;
|
|
@@ -64100,12 +64006,12 @@ var menuItemsApi_1 = menuItemsApi$2;
|
|
|
64100
64006
|
*/
|
|
64101
64007
|
|
|
64102
64008
|
// ipcRenderer that must be used to invoke the events
|
|
64103
|
-
const { ipcRenderer: ipcRenderer$
|
|
64009
|
+
const { ipcRenderer: ipcRenderer$b } = require$$0$1;
|
|
64104
64010
|
|
|
64105
64011
|
const pluginApi$2 = {
|
|
64106
64012
|
install: (packageName, filepath) =>
|
|
64107
|
-
ipcRenderer$
|
|
64108
|
-
uninstall: (filepath) => ipcRenderer$
|
|
64013
|
+
ipcRenderer$b.invoke("plugin-install", { packageName, filepath }),
|
|
64014
|
+
uninstall: (filepath) => ipcRenderer$b.invoke("plugin-uninstall", filepath),
|
|
64109
64015
|
};
|
|
64110
64016
|
|
|
64111
64017
|
var pluginApi_1 = pluginApi$2;
|
|
@@ -64118,7 +64024,7 @@ var pluginApi_1 = pluginApi$2;
|
|
|
64118
64024
|
* tool-use events, and request cancellation.
|
|
64119
64025
|
*/
|
|
64120
64026
|
|
|
64121
|
-
const { ipcRenderer: ipcRenderer$
|
|
64027
|
+
const { ipcRenderer: ipcRenderer$a } = require$$0$1;
|
|
64122
64028
|
const {
|
|
64123
64029
|
LLM_SEND_MESSAGE,
|
|
64124
64030
|
LLM_ABORT_REQUEST,
|
|
@@ -64140,7 +64046,7 @@ const _listenerMap = new Map();
|
|
|
64140
64046
|
function _addListener(channel, callback) {
|
|
64141
64047
|
const id = String(++_nextListenerId);
|
|
64142
64048
|
const wrapped = (_event, data) => callback(data);
|
|
64143
|
-
ipcRenderer$
|
|
64049
|
+
ipcRenderer$a.on(channel, wrapped);
|
|
64144
64050
|
_listenerMap.set(id, { channel, wrapped });
|
|
64145
64051
|
return id;
|
|
64146
64052
|
}
|
|
@@ -64155,7 +64061,7 @@ const llmApi$2 = {
|
|
|
64155
64061
|
* @returns {Promise<void>}
|
|
64156
64062
|
*/
|
|
64157
64063
|
sendMessage: (requestId, params) =>
|
|
64158
|
-
ipcRenderer$
|
|
64064
|
+
ipcRenderer$a.invoke(LLM_SEND_MESSAGE, { requestId, ...params }),
|
|
64159
64065
|
|
|
64160
64066
|
/**
|
|
64161
64067
|
* abortRequest
|
|
@@ -64165,7 +64071,7 @@ const llmApi$2 = {
|
|
|
64165
64071
|
* @returns {Promise<{ success: boolean }>}
|
|
64166
64072
|
*/
|
|
64167
64073
|
abortRequest: (requestId) =>
|
|
64168
|
-
ipcRenderer$
|
|
64074
|
+
ipcRenderer$a.invoke(LLM_ABORT_REQUEST, { requestId }),
|
|
64169
64075
|
|
|
64170
64076
|
/**
|
|
64171
64077
|
* listConnectedTools
|
|
@@ -64173,7 +64079,7 @@ const llmApi$2 = {
|
|
|
64173
64079
|
*
|
|
64174
64080
|
* @returns {Promise<Array<{ serverName, tools, resources, status }>>}
|
|
64175
64081
|
*/
|
|
64176
|
-
listConnectedTools: () => ipcRenderer$
|
|
64082
|
+
listConnectedTools: () => ipcRenderer$a.invoke(LLM_LIST_CONNECTED_TOOLS),
|
|
64177
64083
|
|
|
64178
64084
|
/**
|
|
64179
64085
|
* checkCliAvailable
|
|
@@ -64181,7 +64087,7 @@ const llmApi$2 = {
|
|
|
64181
64087
|
*
|
|
64182
64088
|
* @returns {Promise<{ available: boolean, path?: string }>}
|
|
64183
64089
|
*/
|
|
64184
|
-
checkCliAvailable: () => ipcRenderer$
|
|
64090
|
+
checkCliAvailable: () => ipcRenderer$a.invoke(LLM_CHECK_CLI_AVAILABLE),
|
|
64185
64091
|
|
|
64186
64092
|
/**
|
|
64187
64093
|
* clearCliSession
|
|
@@ -64191,7 +64097,7 @@ const llmApi$2 = {
|
|
|
64191
64097
|
* @returns {Promise<{ success: boolean }>}
|
|
64192
64098
|
*/
|
|
64193
64099
|
clearCliSession: (widgetUuid) =>
|
|
64194
|
-
ipcRenderer$
|
|
64100
|
+
ipcRenderer$a.invoke(LLM_CLEAR_CLI_SESSION, { widgetUuid }),
|
|
64195
64101
|
|
|
64196
64102
|
/**
|
|
64197
64103
|
* getCliSessionStatus
|
|
@@ -64201,7 +64107,7 @@ const llmApi$2 = {
|
|
|
64201
64107
|
* @returns {Promise<{ hasSession: boolean, sessionId?: string, isProcessActive: boolean }>}
|
|
64202
64108
|
*/
|
|
64203
64109
|
getCliSessionStatus: (widgetUuid) =>
|
|
64204
|
-
ipcRenderer$
|
|
64110
|
+
ipcRenderer$a.invoke(LLM_CLI_SESSION_STATUS, { widgetUuid }),
|
|
64205
64111
|
|
|
64206
64112
|
/**
|
|
64207
64113
|
* endCliSession
|
|
@@ -64211,7 +64117,7 @@ const llmApi$2 = {
|
|
|
64211
64117
|
* @returns {Promise<{ success: boolean }>}
|
|
64212
64118
|
*/
|
|
64213
64119
|
endCliSession: (widgetUuid) =>
|
|
64214
|
-
ipcRenderer$
|
|
64120
|
+
ipcRenderer$a.invoke(LLM_CLI_END_SESSION, { widgetUuid }),
|
|
64215
64121
|
|
|
64216
64122
|
// --- Stream event listeners ---
|
|
64217
64123
|
// Each on* method returns an opaque string ID. Strings cross the
|
|
@@ -64245,7 +64151,7 @@ const llmApi$2 = {
|
|
|
64245
64151
|
const listenerId = id !== undefined ? String(id) : String(idOrChannel);
|
|
64246
64152
|
const entry = _listenerMap.get(listenerId);
|
|
64247
64153
|
if (entry) {
|
|
64248
|
-
ipcRenderer$
|
|
64154
|
+
ipcRenderer$a.removeListener(entry.channel, entry.wrapped);
|
|
64249
64155
|
_listenerMap.delete(listenerId);
|
|
64250
64156
|
}
|
|
64251
64157
|
},
|
|
@@ -64257,70 +64163,19 @@ const llmApi$2 = {
|
|
|
64257
64163
|
*/
|
|
64258
64164
|
removeAllStreamListeners: () => {
|
|
64259
64165
|
for (const [, entry] of _listenerMap) {
|
|
64260
|
-
ipcRenderer$
|
|
64166
|
+
ipcRenderer$a.removeListener(entry.channel, entry.wrapped);
|
|
64261
64167
|
}
|
|
64262
64168
|
_listenerMap.clear();
|
|
64263
|
-
ipcRenderer$
|
|
64264
|
-
ipcRenderer$
|
|
64265
|
-
ipcRenderer$
|
|
64266
|
-
ipcRenderer$
|
|
64267
|
-
ipcRenderer$
|
|
64169
|
+
ipcRenderer$a.removeAllListeners(LLM_STREAM_DELTA);
|
|
64170
|
+
ipcRenderer$a.removeAllListeners(LLM_STREAM_TOOL_CALL);
|
|
64171
|
+
ipcRenderer$a.removeAllListeners(LLM_STREAM_TOOL_RESULT);
|
|
64172
|
+
ipcRenderer$a.removeAllListeners(LLM_STREAM_COMPLETE);
|
|
64173
|
+
ipcRenderer$a.removeAllListeners(LLM_STREAM_ERROR);
|
|
64268
64174
|
},
|
|
64269
64175
|
};
|
|
64270
64176
|
|
|
64271
64177
|
var llmApi_1 = llmApi$2;
|
|
64272
64178
|
|
|
64273
|
-
/**
|
|
64274
|
-
* clientCacheApi.js
|
|
64275
|
-
*
|
|
64276
|
-
* Renderer-side API for cache management.
|
|
64277
|
-
* Communicates with main process via IPC to invalidate cached clients
|
|
64278
|
-
* and manage the response cache.
|
|
64279
|
-
*/
|
|
64280
|
-
|
|
64281
|
-
const { ipcRenderer: ipcRenderer$a } = require$$0$1;
|
|
64282
|
-
const {
|
|
64283
|
-
CLIENT_CACHE_INVALIDATE,
|
|
64284
|
-
CLIENT_CACHE_INVALIDATE_ALL,
|
|
64285
|
-
RESPONSE_CACHE_CLEAR,
|
|
64286
|
-
RESPONSE_CACHE_STATS,
|
|
64287
|
-
} = events$8;
|
|
64288
|
-
|
|
64289
|
-
const clientCacheApi$2 = {
|
|
64290
|
-
/**
|
|
64291
|
-
* Invalidate a specific cached client by provider identity.
|
|
64292
|
-
*
|
|
64293
|
-
* @param {string} appId - the application id
|
|
64294
|
-
* @param {string} providerName - the provider name to invalidate
|
|
64295
|
-
* @returns {Promise<{success: boolean}>}
|
|
64296
|
-
*/
|
|
64297
|
-
invalidate: (appId, providerName) =>
|
|
64298
|
-
ipcRenderer$a.invoke(CLIENT_CACHE_INVALIDATE, { appId, providerName }),
|
|
64299
|
-
|
|
64300
|
-
/**
|
|
64301
|
-
* Invalidate all cached clients.
|
|
64302
|
-
*
|
|
64303
|
-
* @returns {Promise<{success: boolean}>}
|
|
64304
|
-
*/
|
|
64305
|
-
invalidateAll: () => ipcRenderer$a.invoke(CLIENT_CACHE_INVALIDATE_ALL),
|
|
64306
|
-
|
|
64307
|
-
/**
|
|
64308
|
-
* Clear the response cache.
|
|
64309
|
-
*
|
|
64310
|
-
* @returns {Promise<{success: boolean}>}
|
|
64311
|
-
*/
|
|
64312
|
-
clearResponseCache: () => ipcRenderer$a.invoke(RESPONSE_CACHE_CLEAR),
|
|
64313
|
-
|
|
64314
|
-
/**
|
|
64315
|
-
* Get response cache statistics.
|
|
64316
|
-
*
|
|
64317
|
-
* @returns {Promise<{entries: number, inflight: number, keys: string[]}>}
|
|
64318
|
-
*/
|
|
64319
|
-
responseCacheStats: () => ipcRenderer$a.invoke(RESPONSE_CACHE_STATS),
|
|
64320
|
-
};
|
|
64321
|
-
|
|
64322
|
-
var clientCacheApi_1 = clientCacheApi$2;
|
|
64323
|
-
|
|
64324
64179
|
/**
|
|
64325
64180
|
* dashboardConfigApi.js
|
|
64326
64181
|
*
|
|
@@ -66255,7 +66110,6 @@ const openaiApi$1 = openaiApi_1;
|
|
|
66255
66110
|
const menuItemsApi$1 = menuItemsApi_1;
|
|
66256
66111
|
const pluginApi$1 = pluginApi_1;
|
|
66257
66112
|
const llmApi$1 = llmApi_1;
|
|
66258
|
-
const clientCacheApi$1 = clientCacheApi_1;
|
|
66259
66113
|
const dashboardConfigApi$1 = dashboardConfigApi_1;
|
|
66260
66114
|
const dashboardRatingsApi = dashboardRatingsApi_1;
|
|
66261
66115
|
const registryAuthApi$1 = registryAuthApi_1;
|
|
@@ -66335,7 +66189,6 @@ function createMainApi$1(extensions = {}) {
|
|
|
66335
66189
|
openai: openaiApi$1,
|
|
66336
66190
|
menuItems: menuItemsApi$1,
|
|
66337
66191
|
plugins: pluginApi$1,
|
|
66338
|
-
clientCache: clientCacheApi$1,
|
|
66339
66192
|
dashboardConfig: dashboardConfigApi$1,
|
|
66340
66193
|
dashboardRatings: dashboardRatingsApi,
|
|
66341
66194
|
registryAuth: registryAuthApi$1,
|
|
@@ -66433,7 +66286,6 @@ const openaiApi = openaiApi_1;
|
|
|
66433
66286
|
const menuItemsApi = menuItemsApi_1;
|
|
66434
66287
|
const pluginApi = pluginApi_1;
|
|
66435
66288
|
const llmApi = llmApi_1;
|
|
66436
|
-
const clientCacheApi = clientCacheApi_1;
|
|
66437
66289
|
const dashboardConfigApi = dashboardConfigApi_1;
|
|
66438
66290
|
const registryAuthApi = registryAuthApi_1;
|
|
66439
66291
|
const notificationApi = notificationApi_1;
|
|
@@ -66531,7 +66383,6 @@ var electron = {
|
|
|
66531
66383
|
menuItemsApi,
|
|
66532
66384
|
pluginApi,
|
|
66533
66385
|
llmApi,
|
|
66534
|
-
clientCacheApi,
|
|
66535
66386
|
dashboardConfigApi,
|
|
66536
66387
|
registryAuthApi,
|
|
66537
66388
|
notificationApi,
|