@trops/dash-core 0.1.506 → 0.1.507
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 +239 -284
- package/dist/electron/index.js.map +1 -1
- package/package.json +1 -1
package/dist/electron/index.js
CHANGED
|
@@ -25,7 +25,6 @@ var require$$1$4 = require('croner');
|
|
|
25
25
|
var require$$2$3 = require('algoliasearch');
|
|
26
26
|
var require$$3$3 = require('node:path');
|
|
27
27
|
var require$$0$7 = require('openai');
|
|
28
|
-
require('live-plugin-manager');
|
|
29
28
|
var require$$0$a = require('@anthropic-ai/sdk');
|
|
30
29
|
var require$$3$4 = require('crypto');
|
|
31
30
|
var require$$8$1 = require('zod');
|
|
@@ -1054,7 +1053,7 @@ var secureStoreController$1 = {
|
|
|
1054
1053
|
decryptString,
|
|
1055
1054
|
};
|
|
1056
1055
|
|
|
1057
|
-
const path$
|
|
1056
|
+
const path$m = require$$1$1;
|
|
1058
1057
|
const {
|
|
1059
1058
|
readFileSync,
|
|
1060
1059
|
writeFileSync: writeFileSync$3,
|
|
@@ -1072,7 +1071,7 @@ const {
|
|
|
1072
1071
|
function ensureDirectoryExistence$1(filePath) {
|
|
1073
1072
|
try {
|
|
1074
1073
|
// isDirectory
|
|
1075
|
-
var dirname = path$
|
|
1074
|
+
var dirname = path$m.dirname(filePath);
|
|
1076
1075
|
// check if the directory exists...return true
|
|
1077
1076
|
// if not, we can pass in the dirname as the filepath
|
|
1078
1077
|
// and check each directory recursively.
|
|
@@ -1187,7 +1186,7 @@ function removeFilesFromDirectory(directory, excludeFiles = []) {
|
|
|
1187
1186
|
|
|
1188
1187
|
for (const file of files) {
|
|
1189
1188
|
if (!excludeFiles.includes(file)) {
|
|
1190
|
-
unlinkSync(path$
|
|
1189
|
+
unlinkSync(path$m.join(directory, file), (err) => {
|
|
1191
1190
|
if (err) throw err;
|
|
1192
1191
|
});
|
|
1193
1192
|
}
|
|
@@ -1204,8 +1203,8 @@ var file = {
|
|
|
1204
1203
|
checkDirectory: checkDirectory$1,
|
|
1205
1204
|
};
|
|
1206
1205
|
|
|
1207
|
-
const { app: app$
|
|
1208
|
-
const path$
|
|
1206
|
+
const { app: app$e } = require$$0$1;
|
|
1207
|
+
const path$l = require$$1$1;
|
|
1209
1208
|
const { writeFileSync: writeFileSync$2 } = require$$0$2;
|
|
1210
1209
|
const { getFileContents: getFileContents$7 } = file;
|
|
1211
1210
|
|
|
@@ -1252,8 +1251,8 @@ const workspaceController$3 = {
|
|
|
1252
1251
|
saveWorkspaceForApplication: (win, appId, workspaceObject) => {
|
|
1253
1252
|
try {
|
|
1254
1253
|
// filename to the pages file (live pages)
|
|
1255
|
-
const filename = path$
|
|
1256
|
-
app$
|
|
1254
|
+
const filename = path$l.join(
|
|
1255
|
+
app$e.getPath("userData"),
|
|
1257
1256
|
appName$7,
|
|
1258
1257
|
appId,
|
|
1259
1258
|
configFilename$5,
|
|
@@ -1301,8 +1300,8 @@ const workspaceController$3 = {
|
|
|
1301
1300
|
saveMenuItemsForApplication: (win, appId, menuItems) => {
|
|
1302
1301
|
try {
|
|
1303
1302
|
// filename to the workspaces file
|
|
1304
|
-
const filename = path$
|
|
1305
|
-
app$
|
|
1303
|
+
const filename = path$l.join(
|
|
1304
|
+
app$e.getPath("userData"),
|
|
1306
1305
|
appName$7,
|
|
1307
1306
|
appId,
|
|
1308
1307
|
configFilename$5,
|
|
@@ -1350,8 +1349,8 @@ const workspaceController$3 = {
|
|
|
1350
1349
|
*/
|
|
1351
1350
|
deleteWorkspaceForApplication: (win, appId, workspaceId) => {
|
|
1352
1351
|
try {
|
|
1353
|
-
const filename = path$
|
|
1354
|
-
app$
|
|
1352
|
+
const filename = path$l.join(
|
|
1353
|
+
app$e.getPath("userData"),
|
|
1355
1354
|
appName$7,
|
|
1356
1355
|
appId,
|
|
1357
1356
|
configFilename$5,
|
|
@@ -1384,8 +1383,8 @@ const workspaceController$3 = {
|
|
|
1384
1383
|
|
|
1385
1384
|
listWorkspacesForApplication: (win, appId) => {
|
|
1386
1385
|
try {
|
|
1387
|
-
const filename = path$
|
|
1388
|
-
app$
|
|
1386
|
+
const filename = path$l.join(
|
|
1387
|
+
app$e.getPath("userData"),
|
|
1389
1388
|
appName$7,
|
|
1390
1389
|
appId,
|
|
1391
1390
|
configFilename$5,
|
|
@@ -1412,8 +1411,8 @@ const workspaceController$3 = {
|
|
|
1412
1411
|
|
|
1413
1412
|
listMenuItemsForApplication: (win, appId) => {
|
|
1414
1413
|
try {
|
|
1415
|
-
const filename = path$
|
|
1416
|
-
app$
|
|
1414
|
+
const filename = path$l.join(
|
|
1415
|
+
app$e.getPath("userData"),
|
|
1417
1416
|
appName$7,
|
|
1418
1417
|
appId,
|
|
1419
1418
|
configFilename$5,
|
|
@@ -1456,8 +1455,8 @@ const workspaceController$3 = {
|
|
|
1456
1455
|
|
|
1457
1456
|
var workspaceController_1 = workspaceController$3;
|
|
1458
1457
|
|
|
1459
|
-
const { app: app$
|
|
1460
|
-
const path$
|
|
1458
|
+
const { app: app$d } = require$$0$1;
|
|
1459
|
+
const path$k = require$$1$1;
|
|
1461
1460
|
const { writeFileSync: writeFileSync$1 } = require$$0$2;
|
|
1462
1461
|
const { getFileContents: getFileContents$6 } = file;
|
|
1463
1462
|
|
|
@@ -1477,8 +1476,8 @@ const themeController$5 = {
|
|
|
1477
1476
|
saveThemeForApplication: (win, appId, name, obj) => {
|
|
1478
1477
|
try {
|
|
1479
1478
|
// filename to the pages file (live pages)
|
|
1480
|
-
const filename = path$
|
|
1481
|
-
app$
|
|
1479
|
+
const filename = path$k.join(
|
|
1480
|
+
app$d.getPath("userData"),
|
|
1482
1481
|
appName$6,
|
|
1483
1482
|
appId,
|
|
1484
1483
|
configFilename$4,
|
|
@@ -1523,8 +1522,8 @@ const themeController$5 = {
|
|
|
1523
1522
|
*/
|
|
1524
1523
|
listThemesForApplication: (win, appId) => {
|
|
1525
1524
|
try {
|
|
1526
|
-
const filename = path$
|
|
1527
|
-
app$
|
|
1525
|
+
const filename = path$k.join(
|
|
1526
|
+
app$d.getPath("userData"),
|
|
1528
1527
|
appName$6,
|
|
1529
1528
|
appId,
|
|
1530
1529
|
configFilename$4,
|
|
@@ -1565,8 +1564,8 @@ const themeController$5 = {
|
|
|
1565
1564
|
*/
|
|
1566
1565
|
deleteThemeForApplication: (win, appId, themeKey) => {
|
|
1567
1566
|
try {
|
|
1568
|
-
const filename = path$
|
|
1569
|
-
app$
|
|
1567
|
+
const filename = path$k.join(
|
|
1568
|
+
app$d.getPath("userData"),
|
|
1570
1569
|
appName$6,
|
|
1571
1570
|
appId,
|
|
1572
1571
|
configFilename$4,
|
|
@@ -1642,9 +1641,9 @@ var themeController_1 = themeController$5;
|
|
|
1642
1641
|
* `/data/`.
|
|
1643
1642
|
*/
|
|
1644
1643
|
|
|
1645
|
-
const path$
|
|
1644
|
+
const path$j = require$$1$1;
|
|
1646
1645
|
const fs$f = require$$0$2;
|
|
1647
|
-
const { app: app$
|
|
1646
|
+
const { app: app$c } = require$$0$1;
|
|
1648
1647
|
|
|
1649
1648
|
const APP_NAME = "Dashboard";
|
|
1650
1649
|
|
|
@@ -1653,10 +1652,10 @@ const APP_NAME = "Dashboard";
|
|
|
1653
1652
|
* @returns {string[]} ordered allowed roots for that category
|
|
1654
1653
|
*/
|
|
1655
1654
|
function getAllowedRoots$2(category) {
|
|
1656
|
-
const userData = app$
|
|
1655
|
+
const userData = app$c.getPath("userData");
|
|
1657
1656
|
switch (category) {
|
|
1658
1657
|
case "data": {
|
|
1659
|
-
const def = path$
|
|
1658
|
+
const def = path$j.join(userData, APP_NAME, "data");
|
|
1660
1659
|
// The user can configure a custom data directory in
|
|
1661
1660
|
// Settings → General → Data Directory. If set, that
|
|
1662
1661
|
// location is ALSO an allowed root. We don't replace the
|
|
@@ -1666,13 +1665,13 @@ function getAllowedRoots$2(category) {
|
|
|
1666
1665
|
return override ? [def, override] : [def];
|
|
1667
1666
|
}
|
|
1668
1667
|
case "themes":
|
|
1669
|
-
return [path$
|
|
1668
|
+
return [path$j.join(userData, APP_NAME, "themes")];
|
|
1670
1669
|
case "widgets":
|
|
1671
|
-
return [path$
|
|
1670
|
+
return [path$j.join(userData, "widgets")];
|
|
1672
1671
|
case "plugins":
|
|
1673
|
-
return [path$
|
|
1672
|
+
return [path$j.join(userData, "plugins")];
|
|
1674
1673
|
case "downloads":
|
|
1675
|
-
return [app$
|
|
1674
|
+
return [app$c.getPath("downloads")];
|
|
1676
1675
|
default:
|
|
1677
1676
|
throw new Error("safePath: unknown allowed-roots category: " + category);
|
|
1678
1677
|
}
|
|
@@ -1687,8 +1686,8 @@ function getAllowedRoots$2(category) {
|
|
|
1687
1686
|
*/
|
|
1688
1687
|
function readDataDirectoryFromSettings() {
|
|
1689
1688
|
try {
|
|
1690
|
-
const settingsPath = path$
|
|
1691
|
-
app$
|
|
1689
|
+
const settingsPath = path$j.join(
|
|
1690
|
+
app$c.getPath("userData"),
|
|
1692
1691
|
APP_NAME,
|
|
1693
1692
|
"settings.json",
|
|
1694
1693
|
);
|
|
@@ -1719,7 +1718,7 @@ function safePath$3(requested, allowedRoots) {
|
|
|
1719
1718
|
throw new Error("safePath: allowedRoots must be a non-empty array");
|
|
1720
1719
|
}
|
|
1721
1720
|
|
|
1722
|
-
const resolved = path$
|
|
1721
|
+
const resolved = path$j.resolve(requested);
|
|
1723
1722
|
|
|
1724
1723
|
// Real-path through symlinks. If the file doesn't exist yet (a
|
|
1725
1724
|
// create-new operation), real-path the parent so a symlink in the
|
|
@@ -1729,8 +1728,8 @@ function safePath$3(requested, allowedRoots) {
|
|
|
1729
1728
|
real = fs$f.realpathSync(resolved);
|
|
1730
1729
|
} catch (_e) {
|
|
1731
1730
|
try {
|
|
1732
|
-
const parent = fs$f.realpathSync(path$
|
|
1733
|
-
real = path$
|
|
1731
|
+
const parent = fs$f.realpathSync(path$j.dirname(resolved));
|
|
1732
|
+
real = path$j.join(parent, path$j.basename(resolved));
|
|
1734
1733
|
} catch (_e2) {
|
|
1735
1734
|
// Parent doesn't exist either. Use the resolved-but-not-
|
|
1736
1735
|
// real path; the caller's mkdirSync will happen inside the
|
|
@@ -1749,7 +1748,7 @@ function safePath$3(requested, allowedRoots) {
|
|
|
1749
1748
|
}
|
|
1750
1749
|
// Exact match OR strictly-inside (with separator to prevent
|
|
1751
1750
|
// /data-evil/ matching /data/).
|
|
1752
|
-
if (real === realRoot || real.startsWith(realRoot + path$
|
|
1751
|
+
if (real === realRoot || real.startsWith(realRoot + path$j.sep)) {
|
|
1753
1752
|
return real;
|
|
1754
1753
|
}
|
|
1755
1754
|
}
|
|
@@ -1811,8 +1810,8 @@ var safePath_1 = {
|
|
|
1811
1810
|
*/
|
|
1812
1811
|
|
|
1813
1812
|
const fs$e = require$$0$2;
|
|
1814
|
-
const path$
|
|
1815
|
-
const { app: app$
|
|
1813
|
+
const path$i = require$$1$1;
|
|
1814
|
+
const { app: app$b } = require$$0$1;
|
|
1816
1815
|
|
|
1817
1816
|
const FILE_NAME = "widgetMcpGrants.json";
|
|
1818
1817
|
|
|
@@ -1821,7 +1820,7 @@ const FILE_NAME = "widgetMcpGrants.json";
|
|
|
1821
1820
|
let _cache$1 = null;
|
|
1822
1821
|
|
|
1823
1822
|
function grantsFilePath() {
|
|
1824
|
-
return path$
|
|
1823
|
+
return path$i.join(app$b.getPath("userData"), FILE_NAME);
|
|
1825
1824
|
}
|
|
1826
1825
|
|
|
1827
1826
|
function loadFromDisk() {
|
|
@@ -1848,7 +1847,7 @@ function writeToDisk(data) {
|
|
|
1848
1847
|
const tmp = p + ".tmp";
|
|
1849
1848
|
// Ensure parent dir exists (userData should already, but be defensive
|
|
1850
1849
|
// for first-launch / freshly-cleared profile cases).
|
|
1851
|
-
fs$e.mkdirSync(path$
|
|
1850
|
+
fs$e.mkdirSync(path$i.dirname(p), { recursive: true });
|
|
1852
1851
|
fs$e.writeFileSync(tmp, JSON.stringify(data, null, 2), "utf8");
|
|
1853
1852
|
fs$e.renameSync(tmp, p);
|
|
1854
1853
|
}
|
|
@@ -3490,9 +3489,9 @@ function requireTransform () {
|
|
|
3490
3489
|
return transform;
|
|
3491
3490
|
}
|
|
3492
3491
|
|
|
3493
|
-
const { app: app$
|
|
3492
|
+
const { app: app$a } = require$$0$1;
|
|
3494
3493
|
var fs$d = require$$0$2;
|
|
3495
|
-
const path$
|
|
3494
|
+
const path$h = require$$1$1;
|
|
3496
3495
|
const events$5 = events$8;
|
|
3497
3496
|
const { getFileContents: getFileContents$5, writeToFile: writeToFile$2 } = file;
|
|
3498
3497
|
const { safePath: safePath$2, getAllowedRoots: getAllowedRoots$1 } = safePath_1;
|
|
@@ -3509,8 +3508,8 @@ const { readEnforceFlag: readEnforceFlag$2, readJitFlag: readJitFlag$2 } = secur
|
|
|
3509
3508
|
// domain-neutral name is a separate slice).
|
|
3510
3509
|
function _loadFlags$1() {
|
|
3511
3510
|
try {
|
|
3512
|
-
const settingsPath = path$
|
|
3513
|
-
app$
|
|
3511
|
+
const settingsPath = path$h.join(
|
|
3512
|
+
app$a.getPath("userData"),
|
|
3514
3513
|
appName$5,
|
|
3515
3514
|
"settings.json",
|
|
3516
3515
|
);
|
|
@@ -3589,8 +3588,8 @@ const dataController$1 = {
|
|
|
3589
3588
|
// Validate the renderer-supplied filename is contained within
|
|
3590
3589
|
// the data directory. path.join doesn't reject `..` segments;
|
|
3591
3590
|
// safePath does.
|
|
3592
|
-
const candidate = path$
|
|
3593
|
-
app$
|
|
3591
|
+
const candidate = path$h.join(
|
|
3592
|
+
app$a.getPath("userData"),
|
|
3594
3593
|
appName$5,
|
|
3595
3594
|
appId,
|
|
3596
3595
|
"data",
|
|
@@ -3941,8 +3940,8 @@ const dataController$1 = {
|
|
|
3941
3940
|
if (data) {
|
|
3942
3941
|
// Validate filename is contained within the data directory.
|
|
3943
3942
|
// path.join doesn't reject `..` segments; safePath does.
|
|
3944
|
-
const candidate = path$
|
|
3945
|
-
app$
|
|
3943
|
+
const candidate = path$h.join(
|
|
3944
|
+
app$a.getPath("userData"),
|
|
3946
3945
|
appName$5,
|
|
3947
3946
|
"data",
|
|
3948
3947
|
filename,
|
|
@@ -4043,8 +4042,8 @@ const dataController$1 = {
|
|
|
4043
4042
|
try {
|
|
4044
4043
|
if (filename) {
|
|
4045
4044
|
// filename to the pages file (live pages)
|
|
4046
|
-
const fromFilename = path$
|
|
4047
|
-
app$
|
|
4045
|
+
const fromFilename = path$h.join(
|
|
4046
|
+
app$a.getPath("userData"),
|
|
4048
4047
|
appName$5,
|
|
4049
4048
|
"data",
|
|
4050
4049
|
filename,
|
|
@@ -4124,8 +4123,8 @@ var dataController_1 = dataController$1;
|
|
|
4124
4123
|
* settingsController
|
|
4125
4124
|
*/
|
|
4126
4125
|
|
|
4127
|
-
const { app: app$
|
|
4128
|
-
const path$
|
|
4126
|
+
const { app: app$9 } = require$$0$1;
|
|
4127
|
+
const path$g = require$$1$1;
|
|
4129
4128
|
const fs$c = require$$0$2;
|
|
4130
4129
|
const { getFileContents: getFileContents$4, writeToFile: writeToFile$1 } = file;
|
|
4131
4130
|
|
|
@@ -4140,8 +4139,8 @@ function copyDirectory(source, destination) {
|
|
|
4140
4139
|
|
|
4141
4140
|
const files = fs$c.readdirSync(source);
|
|
4142
4141
|
for (const file of files) {
|
|
4143
|
-
const srcPath = path$
|
|
4144
|
-
const destPath = path$
|
|
4142
|
+
const srcPath = path$g.join(source, file);
|
|
4143
|
+
const destPath = path$g.join(destination, file);
|
|
4145
4144
|
const stat = fs$c.lstatSync(srcPath);
|
|
4146
4145
|
|
|
4147
4146
|
// Skip symlinks to prevent following links to sensitive files
|
|
@@ -4169,8 +4168,8 @@ const settingsController$4 = {
|
|
|
4169
4168
|
try {
|
|
4170
4169
|
if (data) {
|
|
4171
4170
|
// <appId>/settings.json
|
|
4172
|
-
const filename = path$
|
|
4173
|
-
app$
|
|
4171
|
+
const filename = path$g.join(
|
|
4172
|
+
app$9.getPath("userData"),
|
|
4174
4173
|
appName$4,
|
|
4175
4174
|
configFilename$3,
|
|
4176
4175
|
);
|
|
@@ -4205,8 +4204,8 @@ const settingsController$4 = {
|
|
|
4205
4204
|
getSettingsForApplication: (win) => {
|
|
4206
4205
|
try {
|
|
4207
4206
|
// <appId>/settings.json
|
|
4208
|
-
const filename = path$
|
|
4209
|
-
app$
|
|
4207
|
+
const filename = path$g.join(
|
|
4208
|
+
app$9.getPath("userData"),
|
|
4210
4209
|
appName$4,
|
|
4211
4210
|
configFilename$3,
|
|
4212
4211
|
);
|
|
@@ -4236,15 +4235,15 @@ const settingsController$4 = {
|
|
|
4236
4235
|
*/
|
|
4237
4236
|
getDataDirectory: (win) => {
|
|
4238
4237
|
try {
|
|
4239
|
-
const settingsPath = path$
|
|
4240
|
-
app$
|
|
4238
|
+
const settingsPath = path$g.join(
|
|
4239
|
+
app$9.getPath("userData"),
|
|
4241
4240
|
appName$4,
|
|
4242
4241
|
configFilename$3,
|
|
4243
4242
|
);
|
|
4244
4243
|
const settings = getFileContents$4(settingsPath, {});
|
|
4245
4244
|
const userDataDir =
|
|
4246
4245
|
settings.userDataDirectory ||
|
|
4247
|
-
path$
|
|
4246
|
+
path$g.join(app$9.getPath("userData"), appName$4);
|
|
4248
4247
|
|
|
4249
4248
|
console.log("[settingsController] Data directory retrieved successfully");
|
|
4250
4249
|
// Return the data for ipcMain.handle() - modern promise-based approach
|
|
@@ -4281,8 +4280,8 @@ const settingsController$4 = {
|
|
|
4281
4280
|
}
|
|
4282
4281
|
|
|
4283
4282
|
// Update settings
|
|
4284
|
-
const settingsPath = path$
|
|
4285
|
-
app$
|
|
4283
|
+
const settingsPath = path$g.join(
|
|
4284
|
+
app$9.getPath("userData"),
|
|
4286
4285
|
appName$4,
|
|
4287
4286
|
configFilename$3,
|
|
4288
4287
|
);
|
|
@@ -4315,20 +4314,20 @@ const settingsController$4 = {
|
|
|
4315
4314
|
migrateDataDirectory: (win, oldPath, newPath) => {
|
|
4316
4315
|
try {
|
|
4317
4316
|
// Resolve paths to prevent traversal
|
|
4318
|
-
const resolvedOldPath = path$
|
|
4319
|
-
const resolvedNewPath = path$
|
|
4317
|
+
const resolvedOldPath = path$g.resolve(oldPath);
|
|
4318
|
+
const resolvedNewPath = path$g.resolve(newPath);
|
|
4320
4319
|
|
|
4321
4320
|
// Validate oldPath is the current configured data directory
|
|
4322
|
-
const settingsCheckPath = path$
|
|
4323
|
-
app$
|
|
4321
|
+
const settingsCheckPath = path$g.join(
|
|
4322
|
+
app$9.getPath("userData"),
|
|
4324
4323
|
appName$4,
|
|
4325
4324
|
configFilename$3,
|
|
4326
4325
|
);
|
|
4327
4326
|
const currentSettings = getFileContents$4(settingsCheckPath, {});
|
|
4328
4327
|
const currentDataDir =
|
|
4329
4328
|
currentSettings.userDataDirectory ||
|
|
4330
|
-
path$
|
|
4331
|
-
if (resolvedOldPath !== path$
|
|
4329
|
+
path$g.join(app$9.getPath("userData"), appName$4);
|
|
4330
|
+
if (resolvedOldPath !== path$g.resolve(currentDataDir)) {
|
|
4332
4331
|
throw new Error("Source path must be the current data directory");
|
|
4333
4332
|
}
|
|
4334
4333
|
|
|
@@ -4364,8 +4363,8 @@ const settingsController$4 = {
|
|
|
4364
4363
|
copyDirectory(resolvedOldPath, resolvedNewPath);
|
|
4365
4364
|
|
|
4366
4365
|
// Update settings to use new path
|
|
4367
|
-
const settingsPath = path$
|
|
4368
|
-
app$
|
|
4366
|
+
const settingsPath = path$g.join(
|
|
4367
|
+
app$9.getPath("userData"),
|
|
4369
4368
|
appName$4,
|
|
4370
4369
|
configFilename$3,
|
|
4371
4370
|
);
|
|
@@ -5029,8 +5028,8 @@ function requireProviderController () {
|
|
|
5029
5028
|
return providerController_1;
|
|
5030
5029
|
}
|
|
5031
5030
|
|
|
5032
|
-
const { app: app$
|
|
5033
|
-
const path$
|
|
5031
|
+
const { app: app$8 } = require$$0$1;
|
|
5032
|
+
const path$f = require$$1$1;
|
|
5034
5033
|
const events$4 = events$8;
|
|
5035
5034
|
const { getFileContents: getFileContents$3 } = file;
|
|
5036
5035
|
|
|
@@ -5046,8 +5045,8 @@ const layoutController$1 = {
|
|
|
5046
5045
|
*/
|
|
5047
5046
|
listLayoutsForApplication: (win, appId) => {
|
|
5048
5047
|
try {
|
|
5049
|
-
const filename = path$
|
|
5050
|
-
app$
|
|
5048
|
+
const filename = path$f.join(
|
|
5049
|
+
app$8.getPath("userData"),
|
|
5051
5050
|
appName$3,
|
|
5052
5051
|
appId,
|
|
5053
5052
|
configFilename$2,
|
|
@@ -22710,7 +22709,7 @@ const {
|
|
|
22710
22709
|
const {
|
|
22711
22710
|
StreamableHTTPClientTransport,
|
|
22712
22711
|
} = streamableHttp$1;
|
|
22713
|
-
const path$
|
|
22712
|
+
const path$e = require$$1$1;
|
|
22714
22713
|
const fs$b = require$$0$2;
|
|
22715
22714
|
const os$2 = require$$2$1;
|
|
22716
22715
|
const responseCache$2 = responseCache_1;
|
|
@@ -22718,7 +22717,7 @@ const { gateToolCall, gateToolCallWithJit } = permissionGate;
|
|
|
22718
22717
|
const { serverKey, parseServerKey } = mcpServerKey;
|
|
22719
22718
|
const { applyPathScopeToCredentials } = mcpScopeResolver;
|
|
22720
22719
|
const { readEnforceFlag: readEnforceFlag$1, readJitFlag: readJitFlag$1 } = securityFlags;
|
|
22721
|
-
const { app: app$
|
|
22720
|
+
const { app: app$7 } = require$$0$1;
|
|
22722
22721
|
|
|
22723
22722
|
/**
|
|
22724
22723
|
* Load the user's settings.json (or null on absence/parse error). The
|
|
@@ -22727,8 +22726,8 @@ const { app: app$8 } = require$$0$1;
|
|
|
22727
22726
|
*/
|
|
22728
22727
|
function loadSettingsForFlags() {
|
|
22729
22728
|
try {
|
|
22730
|
-
const settingsPath = path$
|
|
22731
|
-
app$
|
|
22729
|
+
const settingsPath = path$e.join(
|
|
22730
|
+
app$7.getPath("userData"),
|
|
22732
22731
|
"Dashboard",
|
|
22733
22732
|
"settings.json",
|
|
22734
22733
|
);
|
|
@@ -23300,7 +23299,7 @@ const mcpController$3 = {
|
|
|
23300
23299
|
}
|
|
23301
23300
|
|
|
23302
23301
|
// Interpolate {{MCP_DIR}} in args to resolve local MCP server scripts
|
|
23303
|
-
const mcpDir = path$
|
|
23302
|
+
const mcpDir = path$e.join(__dirname, "..", "mcp");
|
|
23304
23303
|
for (let i = 0; i < args.length; i++) {
|
|
23305
23304
|
if (
|
|
23306
23305
|
typeof args[i] === "string" &&
|
|
@@ -23751,7 +23750,7 @@ const mcpController$3 = {
|
|
|
23751
23750
|
*/
|
|
23752
23751
|
getCatalog: (win) => {
|
|
23753
23752
|
try {
|
|
23754
|
-
const catalogPath = path$
|
|
23753
|
+
const catalogPath = path$e.join(
|
|
23755
23754
|
__dirname,
|
|
23756
23755
|
"..",
|
|
23757
23756
|
"mcp",
|
|
@@ -23792,7 +23791,7 @@ const mcpController$3 = {
|
|
|
23792
23791
|
*/
|
|
23793
23792
|
getKnownExternalCatalog: () => {
|
|
23794
23793
|
try {
|
|
23795
|
-
const catalogPath = path$
|
|
23794
|
+
const catalogPath = path$e.join(
|
|
23796
23795
|
__dirname,
|
|
23797
23796
|
"..",
|
|
23798
23797
|
"mcp",
|
|
@@ -23905,7 +23904,7 @@ const mcpController$3 = {
|
|
|
23905
23904
|
}
|
|
23906
23905
|
|
|
23907
23906
|
// Interpolate {{MCP_DIR}} in authCommand args (same as startServer)
|
|
23908
|
-
const mcpDir = path$
|
|
23907
|
+
const mcpDir = path$e.join(__dirname, "..", "mcp");
|
|
23909
23908
|
const resolvedArgs = (authCommand.args || []).map((arg) =>
|
|
23910
23909
|
typeof arg === "string" && arg.includes("{{MCP_DIR}}")
|
|
23911
23910
|
? arg.replace(/\{\{MCP_DIR\}\}/g, mcpDir)
|
|
@@ -24454,7 +24453,7 @@ function commonjsRequire(path) {
|
|
|
24454
24453
|
*/
|
|
24455
24454
|
|
|
24456
24455
|
const fs$a = require$$0$2;
|
|
24457
|
-
const path$
|
|
24456
|
+
const path$d = require$$1$1;
|
|
24458
24457
|
|
|
24459
24458
|
/**
|
|
24460
24459
|
* Structured error thrown by compileWidget() when the underlying
|
|
@@ -24489,7 +24488,7 @@ function getEsbuildDiagnostics() {
|
|
|
24489
24488
|
|
|
24490
24489
|
try {
|
|
24491
24490
|
const pkgJsonPath = require.resolve("esbuild/package.json");
|
|
24492
|
-
diagnostics.esbuildPackageDir = path$
|
|
24491
|
+
diagnostics.esbuildPackageDir = path$d.dirname(pkgJsonPath);
|
|
24493
24492
|
diagnostics.esbuildVersion = commonjsRequire(pkgJsonPath).version;
|
|
24494
24493
|
} catch (err) {
|
|
24495
24494
|
diagnostics.esbuildResolveError = err.message;
|
|
@@ -24499,13 +24498,13 @@ function getEsbuildDiagnostics() {
|
|
|
24499
24498
|
const archPkgJson = require.resolve(
|
|
24500
24499
|
`${diagnostics.archPackage}/package.json`,
|
|
24501
24500
|
);
|
|
24502
|
-
const archDir = path$
|
|
24501
|
+
const archDir = path$d.dirname(archPkgJson);
|
|
24503
24502
|
// esbuild's native binary on macOS/Linux is bin/esbuild;
|
|
24504
24503
|
// on Windows it's esbuild.exe at the package root.
|
|
24505
24504
|
const candidate =
|
|
24506
24505
|
process.platform === "win32"
|
|
24507
|
-
? path$
|
|
24508
|
-
: path$
|
|
24506
|
+
? path$d.join(archDir, "esbuild.exe")
|
|
24507
|
+
: path$d.join(archDir, "bin", "esbuild");
|
|
24509
24508
|
diagnostics.nativeBinaryPath = candidate;
|
|
24510
24509
|
diagnostics.nativeBinaryExists = fs$a.existsSync(candidate);
|
|
24511
24510
|
} catch (err) {
|
|
@@ -24553,19 +24552,19 @@ async function healthCheck() {
|
|
|
24553
24552
|
* @returns {string|null} Path to the widgets/ directory, or null
|
|
24554
24553
|
*/
|
|
24555
24554
|
function findWidgetsDir$2(widgetPath) {
|
|
24556
|
-
const direct = path$
|
|
24555
|
+
const direct = path$d.join(widgetPath, "widgets");
|
|
24557
24556
|
if (fs$a.existsSync(direct)) {
|
|
24558
24557
|
return direct;
|
|
24559
24558
|
}
|
|
24560
24559
|
|
|
24561
24560
|
// Check configs/widgets/ (packageZip.js nests .dash.js files here)
|
|
24562
|
-
const configsWidgets = path$
|
|
24561
|
+
const configsWidgets = path$d.join(widgetPath, "configs", "widgets");
|
|
24563
24562
|
if (fs$a.existsSync(configsWidgets)) {
|
|
24564
24563
|
return configsWidgets;
|
|
24565
24564
|
}
|
|
24566
24565
|
|
|
24567
24566
|
// Check configs/ directory (used by packageZip.js for distributed widgets)
|
|
24568
|
-
const configs = path$
|
|
24567
|
+
const configs = path$d.join(widgetPath, "configs");
|
|
24569
24568
|
if (fs$a.existsSync(configs)) {
|
|
24570
24569
|
return configs;
|
|
24571
24570
|
}
|
|
@@ -24582,7 +24581,7 @@ function findWidgetsDir$2(widgetPath) {
|
|
|
24582
24581
|
);
|
|
24583
24582
|
|
|
24584
24583
|
for (const subdir of subdirs) {
|
|
24585
|
-
const nested = path$
|
|
24584
|
+
const nested = path$d.join(widgetPath, subdir.name, "widgets");
|
|
24586
24585
|
if (fs$a.existsSync(nested)) {
|
|
24587
24586
|
console.log(`[WidgetCompiler] Found nested widgets/ at ${nested}`);
|
|
24588
24587
|
return nested;
|
|
@@ -24631,14 +24630,14 @@ async function compileWidget$1(widgetPath) {
|
|
|
24631
24630
|
// Compute relative path from the entry file (in widgetPath) to widgetsDir,
|
|
24632
24631
|
// since widgetsDir may be nested (e.g., ./weather-widget/widgets/).
|
|
24633
24632
|
const relWidgetsDir =
|
|
24634
|
-
"./" + path$
|
|
24633
|
+
"./" + path$d.relative(widgetPath, widgetsDir).split(path$d.sep).join("/");
|
|
24635
24634
|
const imports = [];
|
|
24636
24635
|
const exportParts = [];
|
|
24637
24636
|
|
|
24638
24637
|
for (const dashFile of dashFiles) {
|
|
24639
24638
|
const componentName = dashFile.replace(".dash.js", "");
|
|
24640
24639
|
const componentFile = `${componentName}.js`;
|
|
24641
|
-
const componentFilePath = path$
|
|
24640
|
+
const componentFilePath = path$d.join(widgetsDir, componentFile);
|
|
24642
24641
|
const hasComponent = fs$a.existsSync(componentFilePath);
|
|
24643
24642
|
|
|
24644
24643
|
// Import the config (always)
|
|
@@ -24671,9 +24670,9 @@ async function compileWidget$1(widgetPath) {
|
|
|
24671
24670
|
const entryContent = [...imports, "", ...exportParts, ""].join("\n");
|
|
24672
24671
|
|
|
24673
24672
|
// Write temporary entry file in the widget root
|
|
24674
|
-
const entryPath = path$
|
|
24675
|
-
const distDir = path$
|
|
24676
|
-
const outPath = path$
|
|
24673
|
+
const entryPath = path$d.join(widgetPath, "__compile_entry.js");
|
|
24674
|
+
const distDir = path$d.join(widgetPath, "dist");
|
|
24675
|
+
const outPath = path$d.join(distDir, "index.cjs.js");
|
|
24677
24676
|
|
|
24678
24677
|
try {
|
|
24679
24678
|
// Ensure dist/ directory exists
|
|
@@ -24771,7 +24770,7 @@ var widgetCompiler$1 = {
|
|
|
24771
24770
|
*/
|
|
24772
24771
|
|
|
24773
24772
|
const fs$9 = require$$0$2;
|
|
24774
|
-
const path$
|
|
24773
|
+
const path$c = require$$1$1;
|
|
24775
24774
|
const vm = require$$2$2;
|
|
24776
24775
|
const { findWidgetsDir: findWidgetsDir$1 } = widgetCompiler$1;
|
|
24777
24776
|
|
|
@@ -24859,9 +24858,9 @@ class DynamicWidgetLoader {
|
|
|
24859
24858
|
);
|
|
24860
24859
|
|
|
24861
24860
|
const widgetsDir =
|
|
24862
|
-
findWidgetsDir$1(widgetPath) || path$
|
|
24863
|
-
const componentPath = path$
|
|
24864
|
-
const configPath = path$
|
|
24861
|
+
findWidgetsDir$1(widgetPath) || path$c.join(widgetPath, "widgets");
|
|
24862
|
+
const componentPath = path$c.join(widgetsDir, `${componentName}.js`);
|
|
24863
|
+
const configPath = path$c.join(widgetsDir, `${componentName}.dash.js`);
|
|
24865
24864
|
|
|
24866
24865
|
if (!fs$9.existsSync(componentPath)) {
|
|
24867
24866
|
throw new Error(`Component file not found: ${componentPath}`);
|
|
@@ -25062,9 +25061,9 @@ var dynamicWidgetLoaderExports = dynamicWidgetLoader$3.exports;
|
|
|
25062
25061
|
*/
|
|
25063
25062
|
|
|
25064
25063
|
const fs$8 = require$$0$2;
|
|
25065
|
-
const path$
|
|
25064
|
+
const path$b = require$$1$1;
|
|
25066
25065
|
const os$1 = require$$2$1;
|
|
25067
|
-
const { app: app$
|
|
25066
|
+
const { app: app$6 } = require$$0$1;
|
|
25068
25067
|
|
|
25069
25068
|
// Cache: widgetId → permissions | null. Populated lazily on first
|
|
25070
25069
|
// lookup; invalidated when a widget is installed/uninstalled (the
|
|
@@ -25079,7 +25078,7 @@ function expandHome(p) {
|
|
|
25079
25078
|
if (typeof p !== "string" || !p) return p;
|
|
25080
25079
|
if (p === "~") return os$1.homedir();
|
|
25081
25080
|
if (p.startsWith("~/") || p.startsWith("~\\")) {
|
|
25082
|
-
return path$
|
|
25081
|
+
return path$b.join(os$1.homedir(), p.slice(2));
|
|
25083
25082
|
}
|
|
25084
25083
|
return p;
|
|
25085
25084
|
}
|
|
@@ -25119,10 +25118,10 @@ function parseManifestPermissions(packageJson) {
|
|
|
25119
25118
|
*/
|
|
25120
25119
|
function resolveWidgetPackagePath(widgetId) {
|
|
25121
25120
|
if (typeof widgetId !== "string" || !widgetId) return null;
|
|
25122
|
-
const widgetsRoot = path$
|
|
25121
|
+
const widgetsRoot = path$b.join(app$6.getPath("userData"), "widgets");
|
|
25123
25122
|
// Split scope from name for "@scope/name" form.
|
|
25124
25123
|
const parts = widgetId.startsWith("@") ? widgetId.split("/") : [widgetId];
|
|
25125
|
-
return path$
|
|
25124
|
+
return path$b.join(widgetsRoot, ...parts, "package.json");
|
|
25126
25125
|
}
|
|
25127
25126
|
|
|
25128
25127
|
/**
|
|
@@ -25191,7 +25190,7 @@ var widgetPermissions = {
|
|
|
25191
25190
|
*/
|
|
25192
25191
|
|
|
25193
25192
|
const fs$7 = require$$0$2;
|
|
25194
|
-
const path$
|
|
25193
|
+
const path$a = require$$1$1;
|
|
25195
25194
|
|
|
25196
25195
|
const SOURCE_EXTENSIONS = new Set([
|
|
25197
25196
|
".js",
|
|
@@ -25249,13 +25248,13 @@ function readSourceFiles(dir) {
|
|
|
25249
25248
|
return;
|
|
25250
25249
|
}
|
|
25251
25250
|
for (const entry of entries) {
|
|
25252
|
-
const abs = path$
|
|
25253
|
-
const rel = relBase ? path$
|
|
25251
|
+
const abs = path$a.join(current, entry.name);
|
|
25252
|
+
const rel = relBase ? path$a.join(relBase, entry.name) : entry.name;
|
|
25254
25253
|
if (entry.isDirectory()) {
|
|
25255
25254
|
if (skipDirs.has(entry.name)) continue;
|
|
25256
25255
|
walk(abs, rel);
|
|
25257
25256
|
} else if (entry.isFile()) {
|
|
25258
|
-
const ext = path$
|
|
25257
|
+
const ext = path$a.extname(entry.name).toLowerCase();
|
|
25259
25258
|
if (!SOURCE_EXTENSIONS.has(ext)) continue;
|
|
25260
25259
|
if (result.length >= SCAN_FILE_LIMIT) return;
|
|
25261
25260
|
try {
|
|
@@ -25281,7 +25280,7 @@ function scanForMcpUsage(input) {
|
|
|
25281
25280
|
let fileList = [];
|
|
25282
25281
|
if (input.files && typeof input.files === "object") {
|
|
25283
25282
|
for (const [relPath, source] of Object.entries(input.files)) {
|
|
25284
|
-
const ext = path$
|
|
25283
|
+
const ext = path$a.extname(relPath).toLowerCase();
|
|
25285
25284
|
if (!SOURCE_EXTENSIONS.has(ext)) continue;
|
|
25286
25285
|
if (typeof source !== "string") continue;
|
|
25287
25286
|
fileList.push({ relPath, source });
|
|
@@ -27417,7 +27416,7 @@ var widgetRegistryExports = widgetRegistry$1.exports;
|
|
|
27417
27416
|
* - Support two-level browsing: packages (bundles) and widgets within packages
|
|
27418
27417
|
*/
|
|
27419
27418
|
|
|
27420
|
-
const path$
|
|
27419
|
+
const path$9 = require$$1$1;
|
|
27421
27420
|
const fs$6 = require$$0$2;
|
|
27422
27421
|
const os = require$$2$1;
|
|
27423
27422
|
const { toPackageId } = packageId;
|
|
@@ -27454,7 +27453,7 @@ function getCacheKey() {
|
|
|
27454
27453
|
* Get the local test registry path for dev mode
|
|
27455
27454
|
*/
|
|
27456
27455
|
function getTestRegistryPath() {
|
|
27457
|
-
return path$
|
|
27456
|
+
return path$9.join(__dirname, "..", "registry", "test-registry-index.json");
|
|
27458
27457
|
}
|
|
27459
27458
|
|
|
27460
27459
|
/**
|
|
@@ -27912,7 +27911,7 @@ async function fetchPackageSource(packageName, componentName = null) {
|
|
|
27912
27911
|
|
|
27913
27912
|
const zip = new AdmZip(buffer);
|
|
27914
27913
|
const safeName = (pkg.name || "pkg").replace(/[^a-zA-Z0-9-_]/g, "_");
|
|
27915
|
-
const tempDir = path$
|
|
27914
|
+
const tempDir = path$9.join(
|
|
27916
27915
|
os.tmpdir(),
|
|
27917
27916
|
`dash-registry-preview-${safeName}-${Date.now()}`,
|
|
27918
27917
|
);
|
|
@@ -27921,7 +27920,7 @@ async function fetchPackageSource(packageName, componentName = null) {
|
|
|
27921
27920
|
validateZipEntries(zip, tempDir);
|
|
27922
27921
|
zip.extractAllTo(tempDir, true);
|
|
27923
27922
|
|
|
27924
|
-
const widgetsDir = path$
|
|
27923
|
+
const widgetsDir = path$9.join(tempDir, "widgets");
|
|
27925
27924
|
let componentCode = "";
|
|
27926
27925
|
let configCode = "";
|
|
27927
27926
|
let widgetName = null;
|
|
@@ -27949,7 +27948,7 @@ async function fetchPackageSource(packageName, componentName = null) {
|
|
|
27949
27948
|
if (!configFile) configFile = dashFiles[0];
|
|
27950
27949
|
|
|
27951
27950
|
if (configFile) {
|
|
27952
|
-
configCode = fs$6.readFileSync(path$
|
|
27951
|
+
configCode = fs$6.readFileSync(path$9.join(widgetsDir, configFile), "utf8");
|
|
27953
27952
|
widgetName = configFile.replace(/\.dash\.js$/, "");
|
|
27954
27953
|
}
|
|
27955
27954
|
|
|
@@ -27964,7 +27963,7 @@ async function fetchPackageSource(packageName, componentName = null) {
|
|
|
27964
27963
|
|
|
27965
27964
|
if (componentFile) {
|
|
27966
27965
|
componentCode = fs$6.readFileSync(
|
|
27967
|
-
path$
|
|
27966
|
+
path$9.join(widgetsDir, componentFile),
|
|
27968
27967
|
"utf8",
|
|
27969
27968
|
);
|
|
27970
27969
|
if (!widgetName) widgetName = componentFile.replace(/\.js$/, "");
|
|
@@ -27972,13 +27971,13 @@ async function fetchPackageSource(packageName, componentName = null) {
|
|
|
27972
27971
|
}
|
|
27973
27972
|
|
|
27974
27973
|
let bundleSource = null;
|
|
27975
|
-
const bundlePath = path$
|
|
27974
|
+
const bundlePath = path$9.join(tempDir, "dist", "index.cjs.js");
|
|
27976
27975
|
if (fs$6.existsSync(bundlePath)) {
|
|
27977
27976
|
bundleSource = fs$6.readFileSync(bundlePath, "utf8");
|
|
27978
27977
|
}
|
|
27979
27978
|
|
|
27980
27979
|
let dashMeta = {};
|
|
27981
|
-
const dashPath = path$
|
|
27980
|
+
const dashPath = path$9.join(tempDir, "dash.json");
|
|
27982
27981
|
if (fs$6.existsSync(dashPath)) {
|
|
27983
27982
|
try {
|
|
27984
27983
|
dashMeta = JSON.parse(fs$6.readFileSync(dashPath, "utf8"));
|
|
@@ -28023,7 +28022,7 @@ var registryController$3 = {
|
|
|
28023
28022
|
var fs$5 = require$$0$2;
|
|
28024
28023
|
var JSONStream = require$$4;
|
|
28025
28024
|
const algoliasearch$1 = require$$2$3;
|
|
28026
|
-
const path$
|
|
28025
|
+
const path$8 = require$$3$3;
|
|
28027
28026
|
const { ensureDirectoryExistence, checkDirectory } = file;
|
|
28028
28027
|
|
|
28029
28028
|
let AlgoliaIndex$1 = class AlgoliaIndex {
|
|
@@ -28130,7 +28129,7 @@ let AlgoliaIndex$1 = class AlgoliaIndex {
|
|
|
28130
28129
|
if (err) reject(err);
|
|
28131
28130
|
if (files) {
|
|
28132
28131
|
files.forEach((file) => {
|
|
28133
|
-
fs$5.unlinkSync(path$
|
|
28132
|
+
fs$5.unlinkSync(path$8.join(directoryPath, file));
|
|
28134
28133
|
});
|
|
28135
28134
|
resolve();
|
|
28136
28135
|
}
|
|
@@ -28153,7 +28152,7 @@ let AlgoliaIndex$1 = class AlgoliaIndex {
|
|
|
28153
28152
|
let results = [];
|
|
28154
28153
|
for (const fileIndex in files) {
|
|
28155
28154
|
// for each file lets read the file and then push to algolia
|
|
28156
|
-
const pathToBatch = path$
|
|
28155
|
+
const pathToBatch = path$8.join(batchFilepath, files[fileIndex]);
|
|
28157
28156
|
const fileContents = await this.readFile(pathToBatch);
|
|
28158
28157
|
if (fileContents) {
|
|
28159
28158
|
if ("data" in fileContents && "filepath" in fileContents) {
|
|
@@ -28690,8 +28689,8 @@ function upsertMenuItem$1(items, menuItem) {
|
|
|
28690
28689
|
|
|
28691
28690
|
var upsertMenuItem_1 = { upsertMenuItem: upsertMenuItem$1 };
|
|
28692
28691
|
|
|
28693
|
-
const { app: app$
|
|
28694
|
-
const path$
|
|
28692
|
+
const { app: app$5 } = require$$0$1;
|
|
28693
|
+
const path$7 = require$$1$1;
|
|
28695
28694
|
const { writeFileSync } = require$$0$2;
|
|
28696
28695
|
const { getFileContents: getFileContents$2 } = file;
|
|
28697
28696
|
const { upsertMenuItem } = upsertMenuItem_1;
|
|
@@ -28702,8 +28701,8 @@ const appName$2 = "Dashboard";
|
|
|
28702
28701
|
const menuItemsController$1 = {
|
|
28703
28702
|
saveMenuItemForApplication: (win, appId, menuItem) => {
|
|
28704
28703
|
try {
|
|
28705
|
-
const filename = path$
|
|
28706
|
-
app$
|
|
28704
|
+
const filename = path$7.join(
|
|
28705
|
+
app$5.getPath("userData"),
|
|
28707
28706
|
appName$2,
|
|
28708
28707
|
appId,
|
|
28709
28708
|
configFilename$1,
|
|
@@ -28721,8 +28720,8 @@ const menuItemsController$1 = {
|
|
|
28721
28720
|
|
|
28722
28721
|
listMenuItemsForApplication: (win, appId) => {
|
|
28723
28722
|
try {
|
|
28724
|
-
const filename = path$
|
|
28725
|
-
app$
|
|
28723
|
+
const filename = path$7.join(
|
|
28724
|
+
app$5.getPath("userData"),
|
|
28726
28725
|
appName$2,
|
|
28727
28726
|
appId,
|
|
28728
28727
|
configFilename$1,
|
|
@@ -28747,25 +28746,6 @@ const menuItemsController$1 = {
|
|
|
28747
28746
|
|
|
28748
28747
|
var menuItemsController_1 = menuItemsController$1;
|
|
28749
28748
|
|
|
28750
|
-
const path$7 = require$$1$1;
|
|
28751
|
-
const { app: app$5 } = require$$0$1;
|
|
28752
|
-
|
|
28753
|
-
const pluginController$1 = {
|
|
28754
|
-
install: (win, packageName, filepath) => {
|
|
28755
|
-
try {
|
|
28756
|
-
const rootPath = path$7.join(
|
|
28757
|
-
app$5.getPath("userData"),
|
|
28758
|
-
"plugins",
|
|
28759
|
-
packageName,
|
|
28760
|
-
);
|
|
28761
|
-
} catch (e) {
|
|
28762
|
-
win.webContents.send("plugin-install-error", { error: e.message });
|
|
28763
|
-
}
|
|
28764
|
-
},
|
|
28765
|
-
};
|
|
28766
|
-
|
|
28767
|
-
var pluginController_1 = pluginController$1;
|
|
28768
|
-
|
|
28769
28749
|
var mcp = {};
|
|
28770
28750
|
|
|
28771
28751
|
var server$1 = {};
|
|
@@ -62743,7 +62723,6 @@ const {
|
|
|
62743
62723
|
saveMenuItemForApplication,
|
|
62744
62724
|
listMenuItemsForApplication,
|
|
62745
62725
|
} = menuItemsController_1;
|
|
62746
|
-
const { install: pluginInstall } = pluginController_1;
|
|
62747
62726
|
const {
|
|
62748
62727
|
exportDashboardConfig,
|
|
62749
62728
|
selectDashboardFile,
|
|
@@ -62845,7 +62824,6 @@ var controller = {
|
|
|
62845
62824
|
describeImage,
|
|
62846
62825
|
saveMenuItemForApplication,
|
|
62847
62826
|
listMenuItemsForApplication,
|
|
62848
|
-
pluginInstall,
|
|
62849
62827
|
searchIndex,
|
|
62850
62828
|
exportDashboardConfig,
|
|
62851
62829
|
selectDashboardFile,
|
|
@@ -62897,7 +62875,7 @@ var controller = {
|
|
|
62897
62875
|
mcpDashServerController: mcpDashServerController$2,
|
|
62898
62876
|
};
|
|
62899
62877
|
|
|
62900
|
-
const { ipcRenderer: ipcRenderer$
|
|
62878
|
+
const { ipcRenderer: ipcRenderer$o } = require$$0$1;
|
|
62901
62879
|
const { SECURE_STORE_ENCRYPTION_CHECK } = events$8;
|
|
62902
62880
|
/**
|
|
62903
62881
|
* secureStoreApi
|
|
@@ -62919,7 +62897,7 @@ const { SECURE_STORE_ENCRYPTION_CHECK } = events$8;
|
|
|
62919
62897
|
*/
|
|
62920
62898
|
const secureStoreApi$2 = {
|
|
62921
62899
|
isEncryptionAvailable: () =>
|
|
62922
|
-
ipcRenderer$
|
|
62900
|
+
ipcRenderer$o.invoke(SECURE_STORE_ENCRYPTION_CHECK, {}),
|
|
62923
62901
|
};
|
|
62924
62902
|
|
|
62925
62903
|
var secureStoreApi_1 = secureStoreApi$2;
|
|
@@ -62930,7 +62908,7 @@ var secureStoreApi_1 = secureStoreApi$2;
|
|
|
62930
62908
|
* Handle the workspace configuration file
|
|
62931
62909
|
*/
|
|
62932
62910
|
|
|
62933
|
-
const { ipcRenderer: ipcRenderer$
|
|
62911
|
+
const { ipcRenderer: ipcRenderer$n } = require$$0$1;
|
|
62934
62912
|
const {
|
|
62935
62913
|
WORKSPACE_LIST,
|
|
62936
62914
|
WORKSPACE_SAVE,
|
|
@@ -62947,7 +62925,7 @@ const workspaceApi$2 = {
|
|
|
62947
62925
|
*/
|
|
62948
62926
|
listWorkspacesForApplication: (appId) => {
|
|
62949
62927
|
console.log("listWorkspacesForApplication called with appId:", appId);
|
|
62950
|
-
return ipcRenderer$
|
|
62928
|
+
return ipcRenderer$n.invoke(WORKSPACE_LIST, { appId });
|
|
62951
62929
|
},
|
|
62952
62930
|
|
|
62953
62931
|
/**
|
|
@@ -62958,7 +62936,7 @@ const workspaceApi$2 = {
|
|
|
62958
62936
|
* @returns
|
|
62959
62937
|
*/
|
|
62960
62938
|
saveWorkspaceForApplication: (appId, data) =>
|
|
62961
|
-
ipcRenderer$
|
|
62939
|
+
ipcRenderer$n.invoke(WORKSPACE_SAVE, { appId, data }),
|
|
62962
62940
|
|
|
62963
62941
|
/**
|
|
62964
62942
|
* deleteWorkspaceForApplication
|
|
@@ -62968,7 +62946,7 @@ const workspaceApi$2 = {
|
|
|
62968
62946
|
* @returns
|
|
62969
62947
|
*/
|
|
62970
62948
|
deleteWorkspaceForApplication: (appId, workspaceId) =>
|
|
62971
|
-
ipcRenderer$
|
|
62949
|
+
ipcRenderer$n.invoke(WORKSPACE_DELETE, { appId, workspaceId }),
|
|
62972
62950
|
};
|
|
62973
62951
|
|
|
62974
62952
|
var workspaceApi_1 = workspaceApi$2;
|
|
@@ -62980,13 +62958,13 @@ var workspaceApi_1 = workspaceApi$2;
|
|
|
62980
62958
|
*/
|
|
62981
62959
|
|
|
62982
62960
|
// ipcRenderer that must be used to invoke the events
|
|
62983
|
-
const { ipcRenderer: ipcRenderer$
|
|
62961
|
+
const { ipcRenderer: ipcRenderer$m } = require$$0$1;
|
|
62984
62962
|
|
|
62985
62963
|
const { LAYOUT_LIST } = events$8;
|
|
62986
62964
|
|
|
62987
62965
|
const layoutApi$2 = {
|
|
62988
62966
|
listLayoutsForApplication: (appId) =>
|
|
62989
|
-
ipcRenderer$
|
|
62967
|
+
ipcRenderer$m.invoke(LAYOUT_LIST, { appId }),
|
|
62990
62968
|
};
|
|
62991
62969
|
|
|
62992
62970
|
var layoutApi_1 = layoutApi$2;
|
|
@@ -62998,7 +62976,7 @@ var layoutApi_1 = layoutApi$2;
|
|
|
62998
62976
|
*/
|
|
62999
62977
|
|
|
63000
62978
|
// ipcRenderer that must be used to invoke the events
|
|
63001
|
-
const { ipcRenderer: ipcRenderer$
|
|
62979
|
+
const { ipcRenderer: ipcRenderer$l } = require$$0$1;
|
|
63002
62980
|
|
|
63003
62981
|
const {
|
|
63004
62982
|
DATA_JSON_TO_CSV_FILE,
|
|
@@ -63016,7 +62994,7 @@ const {
|
|
|
63016
62994
|
const dataApi$2 = {
|
|
63017
62995
|
// convert a json array of objects to a csv string and save to file
|
|
63018
62996
|
convertJsonToCsvFile: (appId, jsonObject, filename) =>
|
|
63019
|
-
ipcRenderer$
|
|
62997
|
+
ipcRenderer$l.invoke(DATA_JSON_TO_CSV_FILE, {
|
|
63020
62998
|
appId,
|
|
63021
62999
|
jsonObject,
|
|
63022
63000
|
filename,
|
|
@@ -63024,10 +63002,10 @@ const dataApi$2 = {
|
|
|
63024
63002
|
|
|
63025
63003
|
// convert a json array of objects to a csv string and return a string
|
|
63026
63004
|
convertJsonToCsvString: (appId, jsonObject) =>
|
|
63027
|
-
ipcRenderer$
|
|
63005
|
+
ipcRenderer$l.invoke(DATA_JSON_TO_CSV_STRING, { appId, jsonObject }),
|
|
63028
63006
|
|
|
63029
63007
|
parseXMLStream: (filepath, outpath, start) =>
|
|
63030
|
-
ipcRenderer$
|
|
63008
|
+
ipcRenderer$l.invoke(PARSE_XML_STREAM, {
|
|
63031
63009
|
filepath,
|
|
63032
63010
|
outpath,
|
|
63033
63011
|
start,
|
|
@@ -63041,7 +63019,7 @@ const dataApi$2 = {
|
|
|
63041
63019
|
headers = null,
|
|
63042
63020
|
limit = null,
|
|
63043
63021
|
) => {
|
|
63044
|
-
ipcRenderer$
|
|
63022
|
+
ipcRenderer$l.invoke(PARSE_CSV_STREAM, {
|
|
63045
63023
|
filepath,
|
|
63046
63024
|
outpath,
|
|
63047
63025
|
delimiter,
|
|
@@ -63052,15 +63030,15 @@ const dataApi$2 = {
|
|
|
63052
63030
|
},
|
|
63053
63031
|
|
|
63054
63032
|
readLinesFromFile: (filepath, lineCount) => {
|
|
63055
|
-
ipcRenderer$
|
|
63033
|
+
ipcRenderer$l.invoke(READ_LINES, { filepath, lineCount });
|
|
63056
63034
|
},
|
|
63057
63035
|
|
|
63058
63036
|
readJSONFromFile: (filepath, objectCount = null) => {
|
|
63059
|
-
ipcRenderer$
|
|
63037
|
+
ipcRenderer$l.invoke(READ_JSON, { filepath, objectCount });
|
|
63060
63038
|
},
|
|
63061
63039
|
|
|
63062
63040
|
readDataFromURL: (url, toFilepath, widgetId = null) => {
|
|
63063
|
-
ipcRenderer$
|
|
63041
|
+
ipcRenderer$l.invoke(READ_DATA_URL, { url, toFilepath, widgetId });
|
|
63064
63042
|
},
|
|
63065
63043
|
|
|
63066
63044
|
/*
|
|
@@ -63069,7 +63047,7 @@ const dataApi$2 = {
|
|
|
63069
63047
|
* @param {object} returnEmpty the return empty object
|
|
63070
63048
|
*/
|
|
63071
63049
|
saveData: (data, filename, append, returnEmpty, widgetId = null) =>
|
|
63072
|
-
ipcRenderer$
|
|
63050
|
+
ipcRenderer$l.invoke(DATA_SAVE_TO_FILE, {
|
|
63073
63051
|
data,
|
|
63074
63052
|
filename,
|
|
63075
63053
|
append,
|
|
@@ -63087,7 +63065,7 @@ const dataApi$2 = {
|
|
|
63087
63065
|
* gates the gate itself).
|
|
63088
63066
|
*/
|
|
63089
63067
|
readData: (filename, returnEmpty = [], widgetId = null) =>
|
|
63090
|
-
ipcRenderer$
|
|
63068
|
+
ipcRenderer$l.invoke(DATA_READ_FROM_FILE, {
|
|
63091
63069
|
filename,
|
|
63092
63070
|
returnEmpty,
|
|
63093
63071
|
widgetId,
|
|
@@ -63098,7 +63076,7 @@ const dataApi$2 = {
|
|
|
63098
63076
|
* @returns
|
|
63099
63077
|
*/
|
|
63100
63078
|
transformFile: (filepath, outFilepath, mappingFunctionBody, args) => {
|
|
63101
|
-
ipcRenderer$
|
|
63079
|
+
ipcRenderer$l.invoke(TRANSFORM_FILE, {
|
|
63102
63080
|
filepath,
|
|
63103
63081
|
outFilepath,
|
|
63104
63082
|
mappingFunctionBody,
|
|
@@ -63116,7 +63094,7 @@ var dataApi_1 = dataApi$2;
|
|
|
63116
63094
|
*/
|
|
63117
63095
|
|
|
63118
63096
|
// ipcRenderer that must be used to invoke the events
|
|
63119
|
-
const { ipcRenderer: ipcRenderer$
|
|
63097
|
+
const { ipcRenderer: ipcRenderer$k } = require$$0$1;
|
|
63120
63098
|
|
|
63121
63099
|
const {
|
|
63122
63100
|
SETTINGS_GET,
|
|
@@ -63127,14 +63105,14 @@ const {
|
|
|
63127
63105
|
} = events$8;
|
|
63128
63106
|
|
|
63129
63107
|
const settingsApi$2 = {
|
|
63130
|
-
getSettingsForApplication: () => ipcRenderer$
|
|
63108
|
+
getSettingsForApplication: () => ipcRenderer$k.invoke(SETTINGS_GET, {}),
|
|
63131
63109
|
saveSettingsForApplication: (data) =>
|
|
63132
|
-
ipcRenderer$
|
|
63133
|
-
getDataDirectory: () => ipcRenderer$
|
|
63110
|
+
ipcRenderer$k.invoke(SETTINGS_SAVE, { data }),
|
|
63111
|
+
getDataDirectory: () => ipcRenderer$k.invoke(SETTINGS_GET_DATA_DIR, {}),
|
|
63134
63112
|
setDataDirectory: (dataDirectory) =>
|
|
63135
|
-
ipcRenderer$
|
|
63113
|
+
ipcRenderer$k.invoke(SETTINGS_SET_DATA_DIR, { dataDirectory }),
|
|
63136
63114
|
migrateDataDirectory: (oldDirectory, newDirectory) =>
|
|
63137
|
-
ipcRenderer$
|
|
63115
|
+
ipcRenderer$k.invoke(SETTINGS_MIGRATE_DATA_DIR, {
|
|
63138
63116
|
oldDirectory,
|
|
63139
63117
|
newDirectory,
|
|
63140
63118
|
}),
|
|
@@ -63149,7 +63127,7 @@ var settingsApi_1 = settingsApi$2;
|
|
|
63149
63127
|
* Provides file/folder chooser dialogs.
|
|
63150
63128
|
*/
|
|
63151
63129
|
|
|
63152
|
-
const { ipcRenderer: ipcRenderer$
|
|
63130
|
+
const { ipcRenderer: ipcRenderer$j } = require$$0$1;
|
|
63153
63131
|
|
|
63154
63132
|
const { CHOOSE_FILE } = events$8;
|
|
63155
63133
|
|
|
@@ -63162,7 +63140,7 @@ const dialogApi$2 = {
|
|
|
63162
63140
|
* @returns {Promise<string|null>} selected file/folder path, or null if cancelled
|
|
63163
63141
|
*/
|
|
63164
63142
|
chooseFile: (allowFile = true, extensions = ["*"]) => {
|
|
63165
|
-
return ipcRenderer$
|
|
63143
|
+
return ipcRenderer$j.invoke(CHOOSE_FILE, { allowFile, extensions });
|
|
63166
63144
|
},
|
|
63167
63145
|
|
|
63168
63146
|
/**
|
|
@@ -63187,7 +63165,7 @@ const dialogApi$2 = {
|
|
|
63187
63165
|
typeof options.allowFile === "boolean" ? options.allowFile : allowFile;
|
|
63188
63166
|
const resolvedExtensions = options.extensions || extensions;
|
|
63189
63167
|
|
|
63190
|
-
const filePath = await ipcRenderer$
|
|
63168
|
+
const filePath = await ipcRenderer$j.invoke(CHOOSE_FILE, {
|
|
63191
63169
|
allowFile: resolvedAllowFile,
|
|
63192
63170
|
extensions: resolvedExtensions,
|
|
63193
63171
|
});
|
|
@@ -63214,7 +63192,7 @@ var dialogApi_1 = dialogApi$2;
|
|
|
63214
63192
|
* mainApi.widgets.uninstall('Weather')
|
|
63215
63193
|
*/
|
|
63216
63194
|
|
|
63217
|
-
const { ipcRenderer: ipcRenderer$
|
|
63195
|
+
const { ipcRenderer: ipcRenderer$i } = require$$0$1;
|
|
63218
63196
|
|
|
63219
63197
|
const widgetApi$2 = {
|
|
63220
63198
|
/**
|
|
@@ -63223,7 +63201,7 @@ const widgetApi$2 = {
|
|
|
63223
63201
|
*/
|
|
63224
63202
|
list: async () => {
|
|
63225
63203
|
try {
|
|
63226
|
-
return await ipcRenderer$
|
|
63204
|
+
return await ipcRenderer$i.invoke("widget:list");
|
|
63227
63205
|
} catch (error) {
|
|
63228
63206
|
console.error("[WidgetApi] Error listing widgets:", error);
|
|
63229
63207
|
throw error;
|
|
@@ -63237,7 +63215,7 @@ const widgetApi$2 = {
|
|
|
63237
63215
|
*/
|
|
63238
63216
|
get: async (widgetName) => {
|
|
63239
63217
|
try {
|
|
63240
|
-
return await ipcRenderer$
|
|
63218
|
+
return await ipcRenderer$i.invoke("widget:get", widgetName);
|
|
63241
63219
|
} catch (error) {
|
|
63242
63220
|
console.error(`[WidgetApi] Error getting widget ${widgetName}:`, error);
|
|
63243
63221
|
throw error;
|
|
@@ -63268,7 +63246,7 @@ const widgetApi$2 = {
|
|
|
63268
63246
|
console.log(
|
|
63269
63247
|
`[WidgetApi] Installing widget: ${widgetName} from ${downloadUrl}`,
|
|
63270
63248
|
);
|
|
63271
|
-
const config = await ipcRenderer$
|
|
63249
|
+
const config = await ipcRenderer$i.invoke(
|
|
63272
63250
|
"widget:install",
|
|
63273
63251
|
widgetName,
|
|
63274
63252
|
downloadUrl,
|
|
@@ -63308,7 +63286,7 @@ const widgetApi$2 = {
|
|
|
63308
63286
|
console.log(
|
|
63309
63287
|
`[WidgetApi] Installing local widget: ${widgetName} from ${localPath}`,
|
|
63310
63288
|
);
|
|
63311
|
-
const config = await ipcRenderer$
|
|
63289
|
+
const config = await ipcRenderer$i.invoke(
|
|
63312
63290
|
"widget:install-local",
|
|
63313
63291
|
widgetName,
|
|
63314
63292
|
localPath,
|
|
@@ -63339,7 +63317,7 @@ const widgetApi$2 = {
|
|
|
63339
63317
|
loadFolder: async (folderPath) => {
|
|
63340
63318
|
try {
|
|
63341
63319
|
console.log(`[WidgetApi] Loading widgets from folder: ${folderPath}`);
|
|
63342
|
-
const results = await ipcRenderer$
|
|
63320
|
+
const results = await ipcRenderer$i.invoke(
|
|
63343
63321
|
"widget:load-folder",
|
|
63344
63322
|
folderPath,
|
|
63345
63323
|
);
|
|
@@ -63363,7 +63341,7 @@ const widgetApi$2 = {
|
|
|
63363
63341
|
uninstall: async (widgetName) => {
|
|
63364
63342
|
try {
|
|
63365
63343
|
console.log(`[WidgetApi] Uninstalling widget: ${widgetName}`);
|
|
63366
|
-
const success = await ipcRenderer$
|
|
63344
|
+
const success = await ipcRenderer$i.invoke("widget:uninstall", widgetName);
|
|
63367
63345
|
if (success) {
|
|
63368
63346
|
console.log(`[WidgetApi] ✓ Widget ${widgetName} uninstalled`);
|
|
63369
63347
|
} else {
|
|
@@ -63386,7 +63364,7 @@ const widgetApi$2 = {
|
|
|
63386
63364
|
*/
|
|
63387
63365
|
getCachePath: async () => {
|
|
63388
63366
|
try {
|
|
63389
|
-
return await ipcRenderer$
|
|
63367
|
+
return await ipcRenderer$i.invoke("widget:cache-path");
|
|
63390
63368
|
} catch (error) {
|
|
63391
63369
|
console.error("[WidgetApi] Error getting cache path:", error);
|
|
63392
63370
|
throw error;
|
|
@@ -63400,7 +63378,7 @@ const widgetApi$2 = {
|
|
|
63400
63378
|
*/
|
|
63401
63379
|
getStoragePath: async () => {
|
|
63402
63380
|
try {
|
|
63403
|
-
return await ipcRenderer$
|
|
63381
|
+
return await ipcRenderer$i.invoke("widget:storage-path");
|
|
63404
63382
|
} catch (error) {
|
|
63405
63383
|
console.error("[WidgetApi] Error getting storage path:", error);
|
|
63406
63384
|
throw error;
|
|
@@ -63417,7 +63395,7 @@ const widgetApi$2 = {
|
|
|
63417
63395
|
setStoragePath: async (customPath) => {
|
|
63418
63396
|
try {
|
|
63419
63397
|
console.log(`[WidgetApi] Setting storage path to: ${customPath}`);
|
|
63420
|
-
const result = await ipcRenderer$
|
|
63398
|
+
const result = await ipcRenderer$i.invoke(
|
|
63421
63399
|
"widget:set-storage-path",
|
|
63422
63400
|
customPath,
|
|
63423
63401
|
);
|
|
@@ -63439,7 +63417,7 @@ const widgetApi$2 = {
|
|
|
63439
63417
|
*/
|
|
63440
63418
|
getComponentConfigs: async () => {
|
|
63441
63419
|
try {
|
|
63442
|
-
return await ipcRenderer$
|
|
63420
|
+
return await ipcRenderer$i.invoke("widget:get-component-configs");
|
|
63443
63421
|
} catch (error) {
|
|
63444
63422
|
console.error("[WidgetApi] Error getting component configs:", error);
|
|
63445
63423
|
return [];
|
|
@@ -63454,7 +63432,7 @@ const widgetApi$2 = {
|
|
|
63454
63432
|
*/
|
|
63455
63433
|
readBundle: async (widgetName) => {
|
|
63456
63434
|
try {
|
|
63457
|
-
return await ipcRenderer$
|
|
63435
|
+
return await ipcRenderer$i.invoke("widget:read-bundle", widgetName);
|
|
63458
63436
|
} catch (error) {
|
|
63459
63437
|
console.error(
|
|
63460
63438
|
`[WidgetApi] Error reading bundle for ${widgetName}:`,
|
|
@@ -63473,7 +63451,7 @@ const widgetApi$2 = {
|
|
|
63473
63451
|
*/
|
|
63474
63452
|
readSources: async (widgetName, componentName) => {
|
|
63475
63453
|
try {
|
|
63476
|
-
return await ipcRenderer$
|
|
63454
|
+
return await ipcRenderer$i.invoke("widget:read-sources", {
|
|
63477
63455
|
widgetName,
|
|
63478
63456
|
componentName,
|
|
63479
63457
|
});
|
|
@@ -63493,7 +63471,7 @@ const widgetApi$2 = {
|
|
|
63493
63471
|
*/
|
|
63494
63472
|
readAllBundles: async () => {
|
|
63495
63473
|
try {
|
|
63496
|
-
return await ipcRenderer$
|
|
63474
|
+
return await ipcRenderer$i.invoke("widget:read-all-bundles");
|
|
63497
63475
|
} catch (error) {
|
|
63498
63476
|
console.error("[WidgetApi] Error reading all bundles:", error);
|
|
63499
63477
|
return [];
|
|
@@ -63513,7 +63491,7 @@ const widgetApi$2 = {
|
|
|
63513
63491
|
* });
|
|
63514
63492
|
*/
|
|
63515
63493
|
onInstalled: (callback) => {
|
|
63516
|
-
ipcRenderer$
|
|
63494
|
+
ipcRenderer$i.on("widget:installed", (event, data) => {
|
|
63517
63495
|
callback(data);
|
|
63518
63496
|
});
|
|
63519
63497
|
},
|
|
@@ -63530,7 +63508,7 @@ const widgetApi$2 = {
|
|
|
63530
63508
|
* });
|
|
63531
63509
|
*/
|
|
63532
63510
|
onUninstalled: (callback) => {
|
|
63533
|
-
ipcRenderer$
|
|
63511
|
+
ipcRenderer$i.on("widget:uninstalled", (event, data) => {
|
|
63534
63512
|
callback(data);
|
|
63535
63513
|
});
|
|
63536
63514
|
},
|
|
@@ -63548,7 +63526,7 @@ const widgetApi$2 = {
|
|
|
63548
63526
|
* });
|
|
63549
63527
|
*/
|
|
63550
63528
|
onLoaded: (callback) => {
|
|
63551
|
-
ipcRenderer$
|
|
63529
|
+
ipcRenderer$i.on("widgets:loaded", (event, data) => {
|
|
63552
63530
|
callback(data);
|
|
63553
63531
|
});
|
|
63554
63532
|
},
|
|
@@ -63559,7 +63537,7 @@ const widgetApi$2 = {
|
|
|
63559
63537
|
* @param {Function} callback - The callback to remove
|
|
63560
63538
|
*/
|
|
63561
63539
|
removeInstalledListener: (callback) => {
|
|
63562
|
-
ipcRenderer$
|
|
63540
|
+
ipcRenderer$i.removeListener("widget:installed", callback);
|
|
63563
63541
|
},
|
|
63564
63542
|
|
|
63565
63543
|
/**
|
|
@@ -63568,7 +63546,7 @@ const widgetApi$2 = {
|
|
|
63568
63546
|
* @param {Function} callback - The callback to remove
|
|
63569
63547
|
*/
|
|
63570
63548
|
removeUninstalledListener: (callback) => {
|
|
63571
|
-
ipcRenderer$
|
|
63549
|
+
ipcRenderer$i.removeListener("widget:uninstalled", callback);
|
|
63572
63550
|
},
|
|
63573
63551
|
|
|
63574
63552
|
/**
|
|
@@ -63577,7 +63555,7 @@ const widgetApi$2 = {
|
|
|
63577
63555
|
* @param {Function} callback - The callback to remove
|
|
63578
63556
|
*/
|
|
63579
63557
|
removeLoadedListener: (callback) => {
|
|
63580
|
-
ipcRenderer$
|
|
63558
|
+
ipcRenderer$i.removeListener("widgets:loaded", callback);
|
|
63581
63559
|
},
|
|
63582
63560
|
};
|
|
63583
63561
|
|
|
@@ -63590,7 +63568,7 @@ var widgetApi_1 = widgetApi$2;
|
|
|
63590
63568
|
* Communicates with main process via IPC to handle encryption and file storage
|
|
63591
63569
|
*/
|
|
63592
63570
|
|
|
63593
|
-
const { ipcRenderer: ipcRenderer$
|
|
63571
|
+
const { ipcRenderer: ipcRenderer$h } = require$$0$1;
|
|
63594
63572
|
const {
|
|
63595
63573
|
PROVIDER_SAVE,
|
|
63596
63574
|
PROVIDER_LIST,
|
|
@@ -63628,7 +63606,7 @@ const providerApi$2 = {
|
|
|
63628
63606
|
// value, preserve what's on disk" from "caller explicitly unset it".
|
|
63629
63607
|
isDefaultForType = undefined,
|
|
63630
63608
|
) =>
|
|
63631
|
-
ipcRenderer$
|
|
63609
|
+
ipcRenderer$h.invoke(PROVIDER_SAVE, {
|
|
63632
63610
|
appId,
|
|
63633
63611
|
providerName,
|
|
63634
63612
|
providerType,
|
|
@@ -63648,7 +63626,7 @@ const providerApi$2 = {
|
|
|
63648
63626
|
* @param {String} appId - the appId specified in the dash initialization
|
|
63649
63627
|
* @returns {Promise<Array>} Array of provider objects with name, type, credentials
|
|
63650
63628
|
*/
|
|
63651
|
-
listProviders: (appId) => ipcRenderer$
|
|
63629
|
+
listProviders: (appId) => ipcRenderer$h.invoke(PROVIDER_LIST, { appId }),
|
|
63652
63630
|
|
|
63653
63631
|
/**
|
|
63654
63632
|
* getProvider
|
|
@@ -63660,7 +63638,7 @@ const providerApi$2 = {
|
|
|
63660
63638
|
* @returns {Promise<Object>} Provider object with name, type, credentials
|
|
63661
63639
|
*/
|
|
63662
63640
|
getProvider: (appId, providerName) =>
|
|
63663
|
-
ipcRenderer$
|
|
63641
|
+
ipcRenderer$h.invoke(PROVIDER_GET, { appId, providerName }),
|
|
63664
63642
|
|
|
63665
63643
|
/**
|
|
63666
63644
|
* deleteProvider
|
|
@@ -63672,7 +63650,7 @@ const providerApi$2 = {
|
|
|
63672
63650
|
* @returns {Promise}
|
|
63673
63651
|
*/
|
|
63674
63652
|
deleteProvider: (appId, providerName) =>
|
|
63675
|
-
ipcRenderer$
|
|
63653
|
+
ipcRenderer$h.invoke(PROVIDER_DELETE, { appId, providerName }),
|
|
63676
63654
|
|
|
63677
63655
|
/**
|
|
63678
63656
|
* listProvidersForApplication
|
|
@@ -63682,14 +63660,14 @@ const providerApi$2 = {
|
|
|
63682
63660
|
* @param {String} appId - the appId specified in the dash initialization
|
|
63683
63661
|
*/
|
|
63684
63662
|
listProvidersForApplication: (appId) => {
|
|
63685
|
-
ipcRenderer$
|
|
63663
|
+
ipcRenderer$h
|
|
63686
63664
|
.invoke(PROVIDER_LIST, { appId })
|
|
63687
63665
|
.then((result) => {
|
|
63688
63666
|
// Emit the event for ElectronDashboardApi to listen to
|
|
63689
|
-
ipcRenderer$
|
|
63667
|
+
ipcRenderer$h.send("PROVIDER_LIST_COMPLETE", result);
|
|
63690
63668
|
})
|
|
63691
63669
|
.catch((error) => {
|
|
63692
|
-
ipcRenderer$
|
|
63670
|
+
ipcRenderer$h.send("PROVIDER_LIST_ERROR", {
|
|
63693
63671
|
error: error.message,
|
|
63694
63672
|
});
|
|
63695
63673
|
});
|
|
@@ -63706,7 +63684,7 @@ const providerApi$2 = {
|
|
|
63706
63684
|
providerType,
|
|
63707
63685
|
credentials,
|
|
63708
63686
|
) => {
|
|
63709
|
-
ipcRenderer$
|
|
63687
|
+
ipcRenderer$h
|
|
63710
63688
|
.invoke(PROVIDER_SAVE, {
|
|
63711
63689
|
appId,
|
|
63712
63690
|
providerName,
|
|
@@ -63714,10 +63692,10 @@ const providerApi$2 = {
|
|
|
63714
63692
|
credentials,
|
|
63715
63693
|
})
|
|
63716
63694
|
.then((result) => {
|
|
63717
|
-
ipcRenderer$
|
|
63695
|
+
ipcRenderer$h.send("PROVIDER_SAVE_COMPLETE", result);
|
|
63718
63696
|
})
|
|
63719
63697
|
.catch((error) => {
|
|
63720
|
-
ipcRenderer$
|
|
63698
|
+
ipcRenderer$h.send("PROVIDER_SAVE_ERROR", {
|
|
63721
63699
|
error: error.message,
|
|
63722
63700
|
});
|
|
63723
63701
|
});
|
|
@@ -63729,13 +63707,13 @@ const providerApi$2 = {
|
|
|
63729
63707
|
* Event-listener-based version for use with ElectronDashboardApi
|
|
63730
63708
|
*/
|
|
63731
63709
|
getProviderForApplication: (appId, providerName) => {
|
|
63732
|
-
ipcRenderer$
|
|
63710
|
+
ipcRenderer$h
|
|
63733
63711
|
.invoke(PROVIDER_GET, { appId, providerName })
|
|
63734
63712
|
.then((result) => {
|
|
63735
|
-
ipcRenderer$
|
|
63713
|
+
ipcRenderer$h.send("PROVIDER_GET_COMPLETE", result);
|
|
63736
63714
|
})
|
|
63737
63715
|
.catch((error) => {
|
|
63738
|
-
ipcRenderer$
|
|
63716
|
+
ipcRenderer$h.send("PROVIDER_GET_ERROR", {
|
|
63739
63717
|
error: error.message,
|
|
63740
63718
|
});
|
|
63741
63719
|
});
|
|
@@ -63747,13 +63725,13 @@ const providerApi$2 = {
|
|
|
63747
63725
|
* Event-listener-based version for use with ElectronDashboardApi
|
|
63748
63726
|
*/
|
|
63749
63727
|
deleteProviderForApplication: (appId, providerName) => {
|
|
63750
|
-
ipcRenderer$
|
|
63728
|
+
ipcRenderer$h
|
|
63751
63729
|
.invoke(PROVIDER_DELETE, { appId, providerName })
|
|
63752
63730
|
.then((result) => {
|
|
63753
|
-
ipcRenderer$
|
|
63731
|
+
ipcRenderer$h.send("PROVIDER_DELETE_COMPLETE", result);
|
|
63754
63732
|
})
|
|
63755
63733
|
.catch((error) => {
|
|
63756
|
-
ipcRenderer$
|
|
63734
|
+
ipcRenderer$h.send("PROVIDER_DELETE_ERROR", {
|
|
63757
63735
|
error: error.message,
|
|
63758
63736
|
});
|
|
63759
63737
|
});
|
|
@@ -63769,7 +63747,7 @@ var providerApi_1 = providerApi$2;
|
|
|
63769
63747
|
* Communicates with main process via IPC to manage MCP server lifecycle.
|
|
63770
63748
|
*/
|
|
63771
63749
|
|
|
63772
|
-
const { ipcRenderer: ipcRenderer$
|
|
63750
|
+
const { ipcRenderer: ipcRenderer$g } = require$$0$1;
|
|
63773
63751
|
const {
|
|
63774
63752
|
MCP_START_SERVER,
|
|
63775
63753
|
MCP_STOP_SERVER,
|
|
@@ -63808,7 +63786,7 @@ const mcpApi$2 = {
|
|
|
63808
63786
|
workspaceId = null,
|
|
63809
63787
|
pathScope = null,
|
|
63810
63788
|
) =>
|
|
63811
|
-
ipcRenderer$
|
|
63789
|
+
ipcRenderer$g.invoke(MCP_START_SERVER, {
|
|
63812
63790
|
serverName,
|
|
63813
63791
|
mcpConfig,
|
|
63814
63792
|
credentials,
|
|
@@ -63825,7 +63803,7 @@ const mcpApi$2 = {
|
|
|
63825
63803
|
* @returns {Promise<{ success, serverName } | { error, message }>}
|
|
63826
63804
|
*/
|
|
63827
63805
|
stopServer: (serverName, workspaceId = null) =>
|
|
63828
|
-
ipcRenderer$
|
|
63806
|
+
ipcRenderer$g.invoke(MCP_STOP_SERVER, { serverName, workspaceId }),
|
|
63829
63807
|
|
|
63830
63808
|
/**
|
|
63831
63809
|
* listTools
|
|
@@ -63836,7 +63814,7 @@ const mcpApi$2 = {
|
|
|
63836
63814
|
* @returns {Promise<{ tools } | { error, message }>}
|
|
63837
63815
|
*/
|
|
63838
63816
|
listTools: (serverName, workspaceId = null) =>
|
|
63839
|
-
ipcRenderer$
|
|
63817
|
+
ipcRenderer$g.invoke(MCP_LIST_TOOLS, { serverName, workspaceId }),
|
|
63840
63818
|
|
|
63841
63819
|
/**
|
|
63842
63820
|
* callTool
|
|
@@ -63864,7 +63842,7 @@ const mcpApi$2 = {
|
|
|
63864
63842
|
widgetId = null,
|
|
63865
63843
|
workspaceId = null,
|
|
63866
63844
|
) =>
|
|
63867
|
-
ipcRenderer$
|
|
63845
|
+
ipcRenderer$g.invoke(MCP_CALL_TOOL, {
|
|
63868
63846
|
serverName,
|
|
63869
63847
|
toolName,
|
|
63870
63848
|
args,
|
|
@@ -63882,7 +63860,7 @@ const mcpApi$2 = {
|
|
|
63882
63860
|
* @returns {Promise<{ resources } | { error, message }>}
|
|
63883
63861
|
*/
|
|
63884
63862
|
listResources: (serverName, workspaceId = null) =>
|
|
63885
|
-
ipcRenderer$
|
|
63863
|
+
ipcRenderer$g.invoke(MCP_LIST_RESOURCES, { serverName, workspaceId }),
|
|
63886
63864
|
|
|
63887
63865
|
/**
|
|
63888
63866
|
* readResource
|
|
@@ -63894,7 +63872,7 @@ const mcpApi$2 = {
|
|
|
63894
63872
|
* @returns {Promise<{ resource } | { error, message }>}
|
|
63895
63873
|
*/
|
|
63896
63874
|
readResource: (serverName, uri, workspaceId = null) =>
|
|
63897
|
-
ipcRenderer$
|
|
63875
|
+
ipcRenderer$g.invoke(MCP_READ_RESOURCE, { serverName, uri, workspaceId }),
|
|
63898
63876
|
|
|
63899
63877
|
/**
|
|
63900
63878
|
* getServerStatus
|
|
@@ -63905,7 +63883,7 @@ const mcpApi$2 = {
|
|
|
63905
63883
|
* @returns {Promise<{ status, tools, error }>}
|
|
63906
63884
|
*/
|
|
63907
63885
|
getServerStatus: (serverName, workspaceId = null) =>
|
|
63908
|
-
ipcRenderer$
|
|
63886
|
+
ipcRenderer$g.invoke(MCP_SERVER_STATUS, { serverName, workspaceId }),
|
|
63909
63887
|
|
|
63910
63888
|
/**
|
|
63911
63889
|
* getCatalog
|
|
@@ -63913,7 +63891,7 @@ const mcpApi$2 = {
|
|
|
63913
63891
|
*
|
|
63914
63892
|
* @returns {Promise<{ catalog } | { error, message }>}
|
|
63915
63893
|
*/
|
|
63916
|
-
getCatalog: () => ipcRenderer$
|
|
63894
|
+
getCatalog: () => ipcRenderer$g.invoke(MCP_GET_CATALOG),
|
|
63917
63895
|
|
|
63918
63896
|
/**
|
|
63919
63897
|
* getKnownExternalCatalog
|
|
@@ -63925,7 +63903,7 @@ const mcpApi$2 = {
|
|
|
63925
63903
|
*
|
|
63926
63904
|
* @returns {Promise<{ success, servers } | { error, message, servers }>}
|
|
63927
63905
|
*/
|
|
63928
|
-
getKnownExternalCatalog: () => ipcRenderer$
|
|
63906
|
+
getKnownExternalCatalog: () => ipcRenderer$g.invoke(MCP_GET_KNOWN_EXTERNAL),
|
|
63929
63907
|
|
|
63930
63908
|
/**
|
|
63931
63909
|
* onInstallKnownExternalConfirm
|
|
@@ -63939,9 +63917,9 @@ const mcpApi$2 = {
|
|
|
63939
63917
|
*/
|
|
63940
63918
|
onInstallKnownExternalConfirm: (callback) => {
|
|
63941
63919
|
const handler = (_e, data) => callback(data);
|
|
63942
|
-
ipcRenderer$
|
|
63920
|
+
ipcRenderer$g.on(MCP_INSTALL_KNOWN_EXTERNAL_CONFIRM$1, handler);
|
|
63943
63921
|
return () =>
|
|
63944
|
-
ipcRenderer$
|
|
63922
|
+
ipcRenderer$g.removeListener(MCP_INSTALL_KNOWN_EXTERNAL_CONFIRM$1, handler);
|
|
63945
63923
|
},
|
|
63946
63924
|
|
|
63947
63925
|
/**
|
|
@@ -63952,7 +63930,7 @@ const mcpApi$2 = {
|
|
|
63952
63930
|
* @param {{ confirmed: boolean, credentials?: object, error?: string }} result
|
|
63953
63931
|
*/
|
|
63954
63932
|
sendInstallKnownExternalResult: (requestId, result) =>
|
|
63955
|
-
ipcRenderer$
|
|
63933
|
+
ipcRenderer$g.send(MCP_INSTALL_KNOWN_EXTERNAL_RESULT$1, { requestId, result }),
|
|
63956
63934
|
|
|
63957
63935
|
/**
|
|
63958
63936
|
* runAuth
|
|
@@ -63964,7 +63942,7 @@ const mcpApi$2 = {
|
|
|
63964
63942
|
* @returns {Promise<{ success } | { error, message }>}
|
|
63965
63943
|
*/
|
|
63966
63944
|
runAuth: (mcpConfig, credentials, authCommand) =>
|
|
63967
|
-
ipcRenderer$
|
|
63945
|
+
ipcRenderer$g.invoke(MCP_RUN_AUTH, { mcpConfig, credentials, authCommand }),
|
|
63968
63946
|
};
|
|
63969
63947
|
|
|
63970
63948
|
var mcpApi_1 = mcpApi$2;
|
|
@@ -63982,7 +63960,7 @@ var mcpApi_1 = mcpApi$2;
|
|
|
63982
63960
|
* mainApi.registry.checkUpdates([{ name: "weather-widgets", version: "1.0.0" }])
|
|
63983
63961
|
*/
|
|
63984
63962
|
|
|
63985
|
-
const { ipcRenderer: ipcRenderer$
|
|
63963
|
+
const { ipcRenderer: ipcRenderer$f } = require$$0$1;
|
|
63986
63964
|
|
|
63987
63965
|
const registryApi$2 = {
|
|
63988
63966
|
/**
|
|
@@ -63992,7 +63970,7 @@ const registryApi$2 = {
|
|
|
63992
63970
|
*/
|
|
63993
63971
|
fetchIndex: async (forceRefresh = false) => {
|
|
63994
63972
|
try {
|
|
63995
|
-
return await ipcRenderer$
|
|
63973
|
+
return await ipcRenderer$f.invoke("registry:fetch-index", forceRefresh);
|
|
63996
63974
|
} catch (error) {
|
|
63997
63975
|
console.error("[RegistryApi] Error fetching index:", error);
|
|
63998
63976
|
throw error;
|
|
@@ -64007,7 +63985,7 @@ const registryApi$2 = {
|
|
|
64007
63985
|
*/
|
|
64008
63986
|
search: async (query = "", filters = {}) => {
|
|
64009
63987
|
try {
|
|
64010
|
-
return await ipcRenderer$
|
|
63988
|
+
return await ipcRenderer$f.invoke("registry:search", query, filters);
|
|
64011
63989
|
} catch (error) {
|
|
64012
63990
|
console.error("[RegistryApi] Error searching registry:", error);
|
|
64013
63991
|
throw error;
|
|
@@ -64021,7 +63999,7 @@ const registryApi$2 = {
|
|
|
64021
63999
|
*/
|
|
64022
64000
|
getPackage: async (packageName) => {
|
|
64023
64001
|
try {
|
|
64024
|
-
return await ipcRenderer$
|
|
64002
|
+
return await ipcRenderer$f.invoke("registry:get-package", packageName);
|
|
64025
64003
|
} catch (error) {
|
|
64026
64004
|
console.error(
|
|
64027
64005
|
`[RegistryApi] Error getting package ${packageName}:`,
|
|
@@ -64038,7 +64016,7 @@ const registryApi$2 = {
|
|
|
64038
64016
|
*/
|
|
64039
64017
|
checkUpdates: async (installedWidgets = []) => {
|
|
64040
64018
|
try {
|
|
64041
|
-
return await ipcRenderer$
|
|
64019
|
+
return await ipcRenderer$f.invoke(
|
|
64042
64020
|
"registry:check-updates",
|
|
64043
64021
|
installedWidgets,
|
|
64044
64022
|
);
|
|
@@ -64056,7 +64034,7 @@ const registryApi$2 = {
|
|
|
64056
64034
|
*/
|
|
64057
64035
|
searchDashboards: async (query = "", filters = {}) => {
|
|
64058
64036
|
try {
|
|
64059
|
-
return await ipcRenderer$
|
|
64037
|
+
return await ipcRenderer$f.invoke(
|
|
64060
64038
|
"registry:search-dashboards",
|
|
64061
64039
|
query,
|
|
64062
64040
|
filters,
|
|
@@ -64075,7 +64053,7 @@ const registryApi$2 = {
|
|
|
64075
64053
|
*/
|
|
64076
64054
|
searchThemes: async (query = "", filters = {}) => {
|
|
64077
64055
|
try {
|
|
64078
|
-
return await ipcRenderer$
|
|
64056
|
+
return await ipcRenderer$f.invoke("registry:search-themes", query, filters);
|
|
64079
64057
|
} catch (error) {
|
|
64080
64058
|
console.error("[RegistryApi] Error searching themes:", error);
|
|
64081
64059
|
throw error;
|
|
@@ -64097,7 +64075,7 @@ const registryApi$2 = {
|
|
|
64097
64075
|
*/
|
|
64098
64076
|
publishWidget: async (appId, packageId, options = {}) => {
|
|
64099
64077
|
try {
|
|
64100
|
-
return await ipcRenderer$
|
|
64078
|
+
return await ipcRenderer$f.invoke("registry:publish-widget", {
|
|
64101
64079
|
appId,
|
|
64102
64080
|
packageId,
|
|
64103
64081
|
options,
|
|
@@ -64118,7 +64096,7 @@ const registryApi$2 = {
|
|
|
64118
64096
|
*/
|
|
64119
64097
|
inspectWidgetPackage: async (packageId) => {
|
|
64120
64098
|
try {
|
|
64121
|
-
return await ipcRenderer$
|
|
64099
|
+
return await ipcRenderer$f.invoke("registry:inspect-widget-package", {
|
|
64122
64100
|
packageId,
|
|
64123
64101
|
});
|
|
64124
64102
|
} catch (error) {
|
|
@@ -64139,7 +64117,7 @@ const registryApi$2 = {
|
|
|
64139
64117
|
*/
|
|
64140
64118
|
scanWidgetDefaults: async (packageId) => {
|
|
64141
64119
|
try {
|
|
64142
|
-
return await ipcRenderer$
|
|
64120
|
+
return await ipcRenderer$f.invoke("registry:scan-widget-defaults", {
|
|
64143
64121
|
packageId,
|
|
64144
64122
|
});
|
|
64145
64123
|
} catch (error) {
|
|
@@ -64162,7 +64140,7 @@ const registryApi$2 = {
|
|
|
64162
64140
|
*/
|
|
64163
64141
|
previewFetch: async (packageName, componentName = null) => {
|
|
64164
64142
|
try {
|
|
64165
|
-
return await ipcRenderer$
|
|
64143
|
+
return await ipcRenderer$f.invoke(
|
|
64166
64144
|
"registry:preview-fetch",
|
|
64167
64145
|
packageName,
|
|
64168
64146
|
componentName,
|
|
@@ -64185,7 +64163,7 @@ var registryApi_1 = registryApi$2;
|
|
|
64185
64163
|
* Handle the theme configuration file
|
|
64186
64164
|
*/
|
|
64187
64165
|
|
|
64188
|
-
const { ipcRenderer: ipcRenderer$
|
|
64166
|
+
const { ipcRenderer: ipcRenderer$e } = require$$0$1;
|
|
64189
64167
|
|
|
64190
64168
|
const {
|
|
64191
64169
|
THEME_LIST,
|
|
@@ -64198,17 +64176,17 @@ const {
|
|
|
64198
64176
|
|
|
64199
64177
|
const themeApi$2 = {
|
|
64200
64178
|
listThemesForApplication: (appId) =>
|
|
64201
|
-
ipcRenderer$
|
|
64179
|
+
ipcRenderer$e.invoke(THEME_LIST, { appId }),
|
|
64202
64180
|
saveThemeForApplication: (appId, themeName, themeObject) =>
|
|
64203
|
-
ipcRenderer$
|
|
64181
|
+
ipcRenderer$e.invoke(THEME_SAVE, { appId, themeName, themeObject }),
|
|
64204
64182
|
deleteThemeForApplication: (appId, themeKey) =>
|
|
64205
|
-
ipcRenderer$
|
|
64183
|
+
ipcRenderer$e.invoke(THEME_DELETE, { appId, themeKey }),
|
|
64206
64184
|
publishTheme: (appId, themeKey, options) =>
|
|
64207
|
-
ipcRenderer$
|
|
64185
|
+
ipcRenderer$e.invoke(THEME_PUBLISH, { appId, themeKey, options }),
|
|
64208
64186
|
installThemeFromRegistry: (appId, packageName) =>
|
|
64209
|
-
ipcRenderer$
|
|
64187
|
+
ipcRenderer$e.invoke(THEME_INSTALL_FROM_REGISTRY, { appId, packageName }),
|
|
64210
64188
|
getThemePublishPreview: (appId, themeKey) =>
|
|
64211
|
-
ipcRenderer$
|
|
64189
|
+
ipcRenderer$e.invoke(THEME_PUBLISH_PREVIEW, { appId, themeKey }),
|
|
64212
64190
|
};
|
|
64213
64191
|
|
|
64214
64192
|
var themeApi_1 = themeApi$2;
|
|
@@ -64220,7 +64198,7 @@ var themeApi_1 = themeApi$2;
|
|
|
64220
64198
|
*/
|
|
64221
64199
|
|
|
64222
64200
|
// ipcRenderer that must be used to invoke the events
|
|
64223
|
-
const { ipcRenderer: ipcRenderer$
|
|
64201
|
+
const { ipcRenderer: ipcRenderer$d } = require$$0$1;
|
|
64224
64202
|
|
|
64225
64203
|
const {
|
|
64226
64204
|
ALGOLIA_LIST_INDICES,
|
|
@@ -64233,10 +64211,10 @@ const {
|
|
|
64233
64211
|
|
|
64234
64212
|
const algoliaApi$2 = {
|
|
64235
64213
|
listIndices: (application) =>
|
|
64236
|
-
ipcRenderer$
|
|
64214
|
+
ipcRenderer$d.invoke(ALGOLIA_LIST_INDICES, application),
|
|
64237
64215
|
|
|
64238
64216
|
browseObjects: (appId, apiKey, indexName) => {
|
|
64239
|
-
ipcRenderer$
|
|
64217
|
+
ipcRenderer$d.invoke(ALGOLIA_BROWSE_OBJECTS, {
|
|
64240
64218
|
appId,
|
|
64241
64219
|
apiKey,
|
|
64242
64220
|
indexName,
|
|
@@ -64245,7 +64223,7 @@ const algoliaApi$2 = {
|
|
|
64245
64223
|
},
|
|
64246
64224
|
|
|
64247
64225
|
getAnalyticsForQuery: (application, indexName, query) =>
|
|
64248
|
-
ipcRenderer$
|
|
64226
|
+
ipcRenderer$d.invoke(ALGOLIA_ANALYTICS_FOR_QUERY, {
|
|
64249
64227
|
application,
|
|
64250
64228
|
indexName,
|
|
64251
64229
|
query,
|
|
@@ -64258,7 +64236,7 @@ const algoliaApi$2 = {
|
|
|
64258
64236
|
dir,
|
|
64259
64237
|
createIfNotExists = false,
|
|
64260
64238
|
) =>
|
|
64261
|
-
ipcRenderer$
|
|
64239
|
+
ipcRenderer$d.invoke(ALGOLIA_PARTIAL_UPDATE_OBJECTS, {
|
|
64262
64240
|
appId,
|
|
64263
64241
|
apiKey,
|
|
64264
64242
|
indexName,
|
|
@@ -64267,7 +64245,7 @@ const algoliaApi$2 = {
|
|
|
64267
64245
|
}),
|
|
64268
64246
|
|
|
64269
64247
|
createBatchesFromFile: (filepath, batchFilepath, batchSize) => {
|
|
64270
|
-
ipcRenderer$
|
|
64248
|
+
ipcRenderer$d.invoke(ALGOLIA_CREATE_BATCH, {
|
|
64271
64249
|
filepath,
|
|
64272
64250
|
batchFilepath,
|
|
64273
64251
|
batchSize,
|
|
@@ -64275,7 +64253,7 @@ const algoliaApi$2 = {
|
|
|
64275
64253
|
},
|
|
64276
64254
|
|
|
64277
64255
|
browseObjectsToFile: (appId, apiKey, indexName, toFilename, query = "") => {
|
|
64278
|
-
ipcRenderer$
|
|
64256
|
+
ipcRenderer$d.invoke(ALGOLIA_BROWSE_OBJECTS, {
|
|
64279
64257
|
appId,
|
|
64280
64258
|
apiKey,
|
|
64281
64259
|
indexName,
|
|
@@ -64285,7 +64263,7 @@ const algoliaApi$2 = {
|
|
|
64285
64263
|
},
|
|
64286
64264
|
|
|
64287
64265
|
search: (appId, apiKey, indexName, query = "", options = {}) =>
|
|
64288
|
-
ipcRenderer$
|
|
64266
|
+
ipcRenderer$d.invoke(ALGOLIA_SEARCH, {
|
|
64289
64267
|
appId,
|
|
64290
64268
|
apiKey,
|
|
64291
64269
|
indexName,
|
|
@@ -64300,14 +64278,14 @@ var algoliaApi_1 = algoliaApi$2;
|
|
|
64300
64278
|
* openAI
|
|
64301
64279
|
*/
|
|
64302
64280
|
|
|
64303
|
-
const { ipcRenderer: ipcRenderer$
|
|
64281
|
+
const { ipcRenderer: ipcRenderer$c } = require$$0$1;
|
|
64304
64282
|
|
|
64305
64283
|
const { OPENAI_DESCRIBE_IMAGE } = openaiEvents$1;
|
|
64306
64284
|
|
|
64307
64285
|
const openaiApi$2 = {
|
|
64308
64286
|
// convert a json array of objects to a csv string and save to file
|
|
64309
64287
|
describeImage: (imageUrl, apiKey, prompt = "What's in this image?") =>
|
|
64310
|
-
ipcRenderer$
|
|
64288
|
+
ipcRenderer$c.invoke(OPENAI_DESCRIBE_IMAGE, { imageUrl, apiKey, prompt }),
|
|
64311
64289
|
};
|
|
64312
64290
|
|
|
64313
64291
|
var openaiApi_1 = openaiApi$2;
|
|
@@ -64318,35 +64296,18 @@ var openaiApi_1 = openaiApi$2;
|
|
|
64318
64296
|
*/
|
|
64319
64297
|
|
|
64320
64298
|
// ipcRenderer that must be used to invoke the events
|
|
64321
|
-
const { ipcRenderer: ipcRenderer$
|
|
64299
|
+
const { ipcRenderer: ipcRenderer$b } = require$$0$1;
|
|
64322
64300
|
|
|
64323
64301
|
const { MENU_ITEMS_SAVE, MENU_ITEMS_LIST } = events$8;
|
|
64324
64302
|
|
|
64325
64303
|
const menuItemsApi$2 = {
|
|
64326
64304
|
saveMenuItem: (appId, menuItem) =>
|
|
64327
|
-
ipcRenderer$
|
|
64328
|
-
listMenuItems: (appId) => ipcRenderer$
|
|
64305
|
+
ipcRenderer$b.invoke(MENU_ITEMS_SAVE, { appId, menuItem }),
|
|
64306
|
+
listMenuItems: (appId) => ipcRenderer$b.invoke(MENU_ITEMS_LIST, { appId }),
|
|
64329
64307
|
};
|
|
64330
64308
|
|
|
64331
64309
|
var menuItemsApi_1 = menuItemsApi$2;
|
|
64332
64310
|
|
|
64333
|
-
/**
|
|
64334
|
-
* pluginApi.js
|
|
64335
|
-
*
|
|
64336
|
-
* Plugin management API for the renderer process.
|
|
64337
|
-
*/
|
|
64338
|
-
|
|
64339
|
-
// ipcRenderer that must be used to invoke the events
|
|
64340
|
-
const { ipcRenderer: ipcRenderer$b } = require$$0$1;
|
|
64341
|
-
|
|
64342
|
-
const pluginApi$2 = {
|
|
64343
|
-
install: (packageName, filepath) =>
|
|
64344
|
-
ipcRenderer$b.invoke("plugin-install", { packageName, filepath }),
|
|
64345
|
-
uninstall: (filepath) => ipcRenderer$b.invoke("plugin-uninstall", filepath),
|
|
64346
|
-
};
|
|
64347
|
-
|
|
64348
|
-
var pluginApi_1 = pluginApi$2;
|
|
64349
|
-
|
|
64350
64311
|
/**
|
|
64351
64312
|
* llmApi.js
|
|
64352
64313
|
*
|
|
@@ -66439,7 +66400,6 @@ const themeApi$1 = themeApi_1;
|
|
|
66439
66400
|
const algoliaApi$1 = algoliaApi_1;
|
|
66440
66401
|
const openaiApi$1 = openaiApi_1;
|
|
66441
66402
|
const menuItemsApi$1 = menuItemsApi_1;
|
|
66442
|
-
const pluginApi$1 = pluginApi_1;
|
|
66443
66403
|
const llmApi$1 = llmApi_1;
|
|
66444
66404
|
const dashboardConfigApi$1 = dashboardConfigApi_1;
|
|
66445
66405
|
const dashboardRatingsApi = dashboardRatingsApi_1;
|
|
@@ -66519,7 +66479,6 @@ function createMainApi$1(extensions = {}) {
|
|
|
66519
66479
|
algolia: algoliaApi$1,
|
|
66520
66480
|
openai: openaiApi$1,
|
|
66521
66481
|
menuItems: menuItemsApi$1,
|
|
66522
|
-
plugins: pluginApi$1,
|
|
66523
66482
|
dashboardConfig: dashboardConfigApi$1,
|
|
66524
66483
|
dashboardRatings: dashboardRatingsApi,
|
|
66525
66484
|
registryAuth: registryAuthApi$1,
|
|
@@ -66572,7 +66531,6 @@ const registryController = registryController$3;
|
|
|
66572
66531
|
const algoliaController = algoliaController_1;
|
|
66573
66532
|
const openaiController = openaiController_1;
|
|
66574
66533
|
const menuItemsController = menuItemsController_1;
|
|
66575
|
-
const pluginController = pluginController_1;
|
|
66576
66534
|
const llmController = llmController_1;
|
|
66577
66535
|
const cliController = cliController_1;
|
|
66578
66536
|
const dashboardConfigController = dashboardConfigController$1;
|
|
@@ -66615,7 +66573,6 @@ const themeApi = themeApi_1;
|
|
|
66615
66573
|
const algoliaApi = algoliaApi_1;
|
|
66616
66574
|
const openaiApi = openaiApi_1;
|
|
66617
66575
|
const menuItemsApi = menuItemsApi_1;
|
|
66618
|
-
const pluginApi = pluginApi_1;
|
|
66619
66576
|
const llmApi = llmApi_1;
|
|
66620
66577
|
const dashboardConfigApi = dashboardConfigApi_1;
|
|
66621
66578
|
const registryAuthApi = registryAuthApi_1;
|
|
@@ -66677,7 +66634,6 @@ var electron = {
|
|
|
66677
66634
|
algoliaController,
|
|
66678
66635
|
openaiController,
|
|
66679
66636
|
menuItemsController,
|
|
66680
|
-
pluginController,
|
|
66681
66637
|
llmController,
|
|
66682
66638
|
cliController,
|
|
66683
66639
|
dashboardConfigController,
|
|
@@ -66712,7 +66668,6 @@ var electron = {
|
|
|
66712
66668
|
algoliaApi,
|
|
66713
66669
|
openaiApi,
|
|
66714
66670
|
menuItemsApi,
|
|
66715
|
-
pluginApi,
|
|
66716
66671
|
llmApi,
|
|
66717
66672
|
dashboardConfigApi,
|
|
66718
66673
|
registryAuthApi,
|