@trops/dash-core 0.1.93 → 0.1.94

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.
@@ -612,16 +612,16 @@ var dashboardConfigEvents$1 = {
612
612
  * IPC event constants for dashboard ratings CRUD.
613
613
  */
614
614
 
615
- const DASHBOARD_RATING_SAVE = "dashboard-rating-save";
616
- const DASHBOARD_RATING_GET = "dashboard-rating-get";
617
- const DASHBOARD_RATING_LIST = "dashboard-rating-list";
618
- const DASHBOARD_RATING_DELETE = "dashboard-rating-delete";
615
+ const DASHBOARD_RATING_SAVE$1 = "dashboard-rating-save";
616
+ const DASHBOARD_RATING_GET$1 = "dashboard-rating-get";
617
+ const DASHBOARD_RATING_LIST$1 = "dashboard-rating-list";
618
+ const DASHBOARD_RATING_DELETE$1 = "dashboard-rating-delete";
619
619
 
620
620
  var dashboardRatingsEvents$1 = {
621
- DASHBOARD_RATING_SAVE,
622
- DASHBOARD_RATING_GET,
623
- DASHBOARD_RATING_LIST,
624
- DASHBOARD_RATING_DELETE,
621
+ DASHBOARD_RATING_SAVE: DASHBOARD_RATING_SAVE$1,
622
+ DASHBOARD_RATING_GET: DASHBOARD_RATING_GET$1,
623
+ DASHBOARD_RATING_LIST: DASHBOARD_RATING_LIST$1,
624
+ DASHBOARD_RATING_DELETE: DASHBOARD_RATING_DELETE$1,
625
625
  };
626
626
 
627
627
  /**
@@ -11252,7 +11252,7 @@ var controller = {
11252
11252
  enrichPackagesWithRatings,
11253
11253
  };
11254
11254
 
11255
- const { ipcRenderer: ipcRenderer$i } = require$$0$1;
11255
+ const { ipcRenderer: ipcRenderer$j } = require$$0$1;
11256
11256
  const {
11257
11257
  SECURE_STORE_ENCRYPTION_CHECK,
11258
11258
  SECURE_STORE_SET_DATA,
@@ -11264,10 +11264,10 @@ const {
11264
11264
  */
11265
11265
  const secureStoreApi$2 = {
11266
11266
  isEncryptionAvailable: () =>
11267
- ipcRenderer$i.invoke(SECURE_STORE_ENCRYPTION_CHECK, {}),
11267
+ ipcRenderer$j.invoke(SECURE_STORE_ENCRYPTION_CHECK, {}),
11268
11268
  saveData: (key, value) =>
11269
- ipcRenderer$i.invoke(SECURE_STORE_SET_DATA, { key, value }),
11270
- getData: (key) => ipcRenderer$i.invoke(SECURE_STORE_GET_DATA, { key }),
11269
+ ipcRenderer$j.invoke(SECURE_STORE_SET_DATA, { key, value }),
11270
+ getData: (key) => ipcRenderer$j.invoke(SECURE_STORE_GET_DATA, { key }),
11271
11271
  };
11272
11272
 
11273
11273
  var secureStoreApi_1 = secureStoreApi$2;
@@ -11278,7 +11278,7 @@ var secureStoreApi_1 = secureStoreApi$2;
11278
11278
  * Handle the workspace configuration file
11279
11279
  */
11280
11280
 
11281
- const { ipcRenderer: ipcRenderer$h } = require$$0$1;
11281
+ const { ipcRenderer: ipcRenderer$i } = require$$0$1;
11282
11282
  const {
11283
11283
  WORKSPACE_LIST,
11284
11284
  WORKSPACE_SAVE,
@@ -11295,7 +11295,7 @@ const workspaceApi$2 = {
11295
11295
  */
11296
11296
  listWorkspacesForApplication: (appId) => {
11297
11297
  console.log("listWorkspacesForApplication called with appId:", appId);
11298
- return ipcRenderer$h.invoke(WORKSPACE_LIST, { appId });
11298
+ return ipcRenderer$i.invoke(WORKSPACE_LIST, { appId });
11299
11299
  },
11300
11300
 
11301
11301
  /**
@@ -11306,7 +11306,7 @@ const workspaceApi$2 = {
11306
11306
  * @returns
11307
11307
  */
11308
11308
  saveWorkspaceForApplication: (appId, data) =>
11309
- ipcRenderer$h.invoke(WORKSPACE_SAVE, { appId, data }),
11309
+ ipcRenderer$i.invoke(WORKSPACE_SAVE, { appId, data }),
11310
11310
 
11311
11311
  /**
11312
11312
  * deleteWorkspaceForApplication
@@ -11316,7 +11316,7 @@ const workspaceApi$2 = {
11316
11316
  * @returns
11317
11317
  */
11318
11318
  deleteWorkspaceForApplication: (appId, workspaceId) =>
11319
- ipcRenderer$h.invoke(WORKSPACE_DELETE, { appId, workspaceId }),
11319
+ ipcRenderer$i.invoke(WORKSPACE_DELETE, { appId, workspaceId }),
11320
11320
  };
11321
11321
 
11322
11322
  var workspaceApi_1 = workspaceApi$2;
@@ -11328,15 +11328,15 @@ var workspaceApi_1 = workspaceApi$2;
11328
11328
  */
11329
11329
 
11330
11330
  // ipcRenderer that must be used to invoke the events
11331
- const { ipcRenderer: ipcRenderer$g } = require$$0$1;
11331
+ const { ipcRenderer: ipcRenderer$h } = require$$0$1;
11332
11332
 
11333
11333
  const { LAYOUT_LIST, LAYOUT_SAVE } = events$8;
11334
11334
 
11335
11335
  const layoutApi$2 = {
11336
11336
  listLayoutsForApplication: (appId) =>
11337
- ipcRenderer$g.invoke(LAYOUT_LIST, { appId }),
11337
+ ipcRenderer$h.invoke(LAYOUT_LIST, { appId }),
11338
11338
  saveLayoutForApplication: (appId, data) =>
11339
- ipcRenderer$g.invoke(LAYOUT_SAVE, { appId, data }),
11339
+ ipcRenderer$h.invoke(LAYOUT_SAVE, { appId, data }),
11340
11340
  };
11341
11341
 
11342
11342
  var layoutApi_1 = layoutApi$2;
@@ -11348,7 +11348,7 @@ var layoutApi_1 = layoutApi$2;
11348
11348
  */
11349
11349
 
11350
11350
  // ipcRenderer that must be used to invoke the events
11351
- const { ipcRenderer: ipcRenderer$f } = require$$0$1;
11351
+ const { ipcRenderer: ipcRenderer$g } = require$$0$1;
11352
11352
 
11353
11353
  const {
11354
11354
  DATA_JSON_TO_CSV_FILE,
@@ -11367,7 +11367,7 @@ const {
11367
11367
  const dataApi$2 = {
11368
11368
  // convert a json array of objects to a csv string and save to file
11369
11369
  convertJsonToCsvFile: (appId, jsonObject, filename) =>
11370
- ipcRenderer$f.invoke(DATA_JSON_TO_CSV_FILE, {
11370
+ ipcRenderer$g.invoke(DATA_JSON_TO_CSV_FILE, {
11371
11371
  appId,
11372
11372
  jsonObject,
11373
11373
  filename,
@@ -11375,10 +11375,10 @@ const dataApi$2 = {
11375
11375
 
11376
11376
  // convert a json array of objects to a csv string and return a string
11377
11377
  convertJsonToCsvString: (appId, jsonObject) =>
11378
- ipcRenderer$f.invoke(DATA_JSON_TO_CSV_STRING, { appId, jsonObject }),
11378
+ ipcRenderer$g.invoke(DATA_JSON_TO_CSV_STRING, { appId, jsonObject }),
11379
11379
 
11380
11380
  parseXMLStream: (filepath, outpath, start) =>
11381
- ipcRenderer$f.invoke(PARSE_XML_STREAM, {
11381
+ ipcRenderer$g.invoke(PARSE_XML_STREAM, {
11382
11382
  filepath,
11383
11383
  outpath,
11384
11384
  start,
@@ -11392,7 +11392,7 @@ const dataApi$2 = {
11392
11392
  headers = null,
11393
11393
  limit = null,
11394
11394
  ) => {
11395
- ipcRenderer$f.invoke(PARSE_CSV_STREAM, {
11395
+ ipcRenderer$g.invoke(PARSE_CSV_STREAM, {
11396
11396
  filepath,
11397
11397
  outpath,
11398
11398
  delimiter,
@@ -11403,15 +11403,15 @@ const dataApi$2 = {
11403
11403
  },
11404
11404
 
11405
11405
  readLinesFromFile: (filepath, lineCount) => {
11406
- ipcRenderer$f.invoke(READ_LINES, { filepath, lineCount });
11406
+ ipcRenderer$g.invoke(READ_LINES, { filepath, lineCount });
11407
11407
  },
11408
11408
 
11409
11409
  readJSONFromFile: (filepath, objectCount = null) => {
11410
- ipcRenderer$f.invoke(READ_JSON, { filepath, objectCount });
11410
+ ipcRenderer$g.invoke(READ_JSON, { filepath, objectCount });
11411
11411
  },
11412
11412
 
11413
11413
  readDataFromURL: (url, toFilepath) => {
11414
- ipcRenderer$f.invoke(READ_DATA_URL, { url, toFilepath });
11414
+ ipcRenderer$g.invoke(READ_DATA_URL, { url, toFilepath });
11415
11415
  },
11416
11416
 
11417
11417
  /*
@@ -11420,7 +11420,7 @@ const dataApi$2 = {
11420
11420
  * @param {object} returnEmpty the return empty object
11421
11421
  */
11422
11422
  saveData: (data, filename, append, returnEmpty, uuid) =>
11423
- ipcRenderer$f.invoke(DATA_SAVE_TO_FILE, {
11423
+ ipcRenderer$g.invoke(DATA_SAVE_TO_FILE, {
11424
11424
  data,
11425
11425
  filename,
11426
11426
  append,
@@ -11432,14 +11432,14 @@ const dataApi$2 = {
11432
11432
  * @param {string} filename the filename to read (not path)
11433
11433
  */
11434
11434
  readData: (filename, returnEmpty = []) =>
11435
- ipcRenderer$f.invoke(DATA_READ_FROM_FILE, { filename, returnEmpty }),
11435
+ ipcRenderer$g.invoke(DATA_READ_FROM_FILE, { filename, returnEmpty }),
11436
11436
 
11437
11437
  /**
11438
11438
  * transformFile
11439
11439
  * @returns
11440
11440
  */
11441
11441
  transformFile: (filepath, outFilepath, mappingFunctionBody, args) => {
11442
- ipcRenderer$f.invoke(TRANSFORM_FILE, {
11442
+ ipcRenderer$g.invoke(TRANSFORM_FILE, {
11443
11443
  filepath,
11444
11444
  outFilepath,
11445
11445
  mappingFunctionBody,
@@ -11448,7 +11448,7 @@ const dataApi$2 = {
11448
11448
  },
11449
11449
 
11450
11450
  extractColorsFromImageURL: (url) => {
11451
- ipcRenderer$f.invoke(EXTRACT_COLORS_FROM_IMAGE, {
11451
+ ipcRenderer$g.invoke(EXTRACT_COLORS_FROM_IMAGE, {
11452
11452
  url,
11453
11453
  });
11454
11454
  },
@@ -11463,7 +11463,7 @@ var dataApi_1 = dataApi$2;
11463
11463
  */
11464
11464
 
11465
11465
  // ipcRenderer that must be used to invoke the events
11466
- const { ipcRenderer: ipcRenderer$e } = require$$0$1;
11466
+ const { ipcRenderer: ipcRenderer$f } = require$$0$1;
11467
11467
 
11468
11468
  const {
11469
11469
  SETTINGS_GET,
@@ -11474,14 +11474,14 @@ const {
11474
11474
  } = events$8;
11475
11475
 
11476
11476
  const settingsApi$2 = {
11477
- getSettingsForApplication: () => ipcRenderer$e.invoke(SETTINGS_GET, {}),
11477
+ getSettingsForApplication: () => ipcRenderer$f.invoke(SETTINGS_GET, {}),
11478
11478
  saveSettingsForApplication: (data) =>
11479
- ipcRenderer$e.invoke(SETTINGS_SAVE, { data }),
11480
- getDataDirectory: () => ipcRenderer$e.invoke(SETTINGS_GET_DATA_DIR, {}),
11479
+ ipcRenderer$f.invoke(SETTINGS_SAVE, { data }),
11480
+ getDataDirectory: () => ipcRenderer$f.invoke(SETTINGS_GET_DATA_DIR, {}),
11481
11481
  setDataDirectory: (dataDirectory) =>
11482
- ipcRenderer$e.invoke(SETTINGS_SET_DATA_DIR, { dataDirectory }),
11482
+ ipcRenderer$f.invoke(SETTINGS_SET_DATA_DIR, { dataDirectory }),
11483
11483
  migrateDataDirectory: (oldDirectory, newDirectory) =>
11484
- ipcRenderer$e.invoke(SETTINGS_MIGRATE_DATA_DIR, {
11484
+ ipcRenderer$f.invoke(SETTINGS_MIGRATE_DATA_DIR, {
11485
11485
  oldDirectory,
11486
11486
  newDirectory,
11487
11487
  }),
@@ -11496,7 +11496,7 @@ var settingsApi_1 = settingsApi$2;
11496
11496
  */
11497
11497
 
11498
11498
  // ipcRenderer that must be used to invoke the events
11499
- const { ipcRenderer: ipcRenderer$d } = require$$0$1;
11499
+ const { ipcRenderer: ipcRenderer$e } = require$$0$1;
11500
11500
 
11501
11501
  const { CHOOSE_FILE } = events$8;
11502
11502
 
@@ -11508,7 +11508,7 @@ const dialogApi$2 = {
11508
11508
  */
11509
11509
  chooseFile: (allowFile = true, extensions = ["*"]) => {
11510
11510
  console.log("dialog api choose file");
11511
- return ipcRenderer$d.invoke(CHOOSE_FILE, { allowFile, extensions });
11511
+ return ipcRenderer$e.invoke(CHOOSE_FILE, { allowFile, extensions });
11512
11512
  },
11513
11513
  };
11514
11514
 
@@ -11527,7 +11527,7 @@ var dialogApi_1 = dialogApi$2;
11527
11527
  * mainApi.widgets.uninstall('Weather')
11528
11528
  */
11529
11529
 
11530
- const { ipcRenderer: ipcRenderer$c } = require$$0$1;
11530
+ const { ipcRenderer: ipcRenderer$d } = require$$0$1;
11531
11531
 
11532
11532
  const widgetApi$2 = {
11533
11533
  /**
@@ -11536,7 +11536,7 @@ const widgetApi$2 = {
11536
11536
  */
11537
11537
  list: async () => {
11538
11538
  try {
11539
- return await ipcRenderer$c.invoke("widget:list");
11539
+ return await ipcRenderer$d.invoke("widget:list");
11540
11540
  } catch (error) {
11541
11541
  console.error("[WidgetApi] Error listing widgets:", error);
11542
11542
  throw error;
@@ -11550,7 +11550,7 @@ const widgetApi$2 = {
11550
11550
  */
11551
11551
  get: async (widgetName) => {
11552
11552
  try {
11553
- return await ipcRenderer$c.invoke("widget:get", widgetName);
11553
+ return await ipcRenderer$d.invoke("widget:get", widgetName);
11554
11554
  } catch (error) {
11555
11555
  console.error(`[WidgetApi] Error getting widget ${widgetName}:`, error);
11556
11556
  throw error;
@@ -11581,7 +11581,7 @@ const widgetApi$2 = {
11581
11581
  console.log(
11582
11582
  `[WidgetApi] Installing widget: ${widgetName} from ${downloadUrl}`,
11583
11583
  );
11584
- const config = await ipcRenderer$c.invoke(
11584
+ const config = await ipcRenderer$d.invoke(
11585
11585
  "widget:install",
11586
11586
  widgetName,
11587
11587
  downloadUrl,
@@ -11621,7 +11621,7 @@ const widgetApi$2 = {
11621
11621
  console.log(
11622
11622
  `[WidgetApi] Installing local widget: ${widgetName} from ${localPath}`,
11623
11623
  );
11624
- const config = await ipcRenderer$c.invoke(
11624
+ const config = await ipcRenderer$d.invoke(
11625
11625
  "widget:install-local",
11626
11626
  widgetName,
11627
11627
  localPath,
@@ -11652,7 +11652,7 @@ const widgetApi$2 = {
11652
11652
  loadFolder: async (folderPath) => {
11653
11653
  try {
11654
11654
  console.log(`[WidgetApi] Loading widgets from folder: ${folderPath}`);
11655
- const results = await ipcRenderer$c.invoke(
11655
+ const results = await ipcRenderer$d.invoke(
11656
11656
  "widget:load-folder",
11657
11657
  folderPath,
11658
11658
  );
@@ -11676,7 +11676,7 @@ const widgetApi$2 = {
11676
11676
  uninstall: async (widgetName) => {
11677
11677
  try {
11678
11678
  console.log(`[WidgetApi] Uninstalling widget: ${widgetName}`);
11679
- const success = await ipcRenderer$c.invoke("widget:uninstall", widgetName);
11679
+ const success = await ipcRenderer$d.invoke("widget:uninstall", widgetName);
11680
11680
  if (success) {
11681
11681
  console.log(`[WidgetApi] ✓ Widget ${widgetName} uninstalled`);
11682
11682
  } else {
@@ -11699,7 +11699,7 @@ const widgetApi$2 = {
11699
11699
  */
11700
11700
  getCachePath: async () => {
11701
11701
  try {
11702
- return await ipcRenderer$c.invoke("widget:cache-path");
11702
+ return await ipcRenderer$d.invoke("widget:cache-path");
11703
11703
  } catch (error) {
11704
11704
  console.error("[WidgetApi] Error getting cache path:", error);
11705
11705
  throw error;
@@ -11713,7 +11713,7 @@ const widgetApi$2 = {
11713
11713
  */
11714
11714
  getStoragePath: async () => {
11715
11715
  try {
11716
- return await ipcRenderer$c.invoke("widget:storage-path");
11716
+ return await ipcRenderer$d.invoke("widget:storage-path");
11717
11717
  } catch (error) {
11718
11718
  console.error("[WidgetApi] Error getting storage path:", error);
11719
11719
  throw error;
@@ -11730,7 +11730,7 @@ const widgetApi$2 = {
11730
11730
  setStoragePath: async (customPath) => {
11731
11731
  try {
11732
11732
  console.log(`[WidgetApi] Setting storage path to: ${customPath}`);
11733
- const result = await ipcRenderer$c.invoke(
11733
+ const result = await ipcRenderer$d.invoke(
11734
11734
  "widget:set-storage-path",
11735
11735
  customPath,
11736
11736
  );
@@ -11752,7 +11752,7 @@ const widgetApi$2 = {
11752
11752
  */
11753
11753
  getComponentConfigs: async () => {
11754
11754
  try {
11755
- return await ipcRenderer$c.invoke("widget:get-component-configs");
11755
+ return await ipcRenderer$d.invoke("widget:get-component-configs");
11756
11756
  } catch (error) {
11757
11757
  console.error("[WidgetApi] Error getting component configs:", error);
11758
11758
  return [];
@@ -11767,7 +11767,7 @@ const widgetApi$2 = {
11767
11767
  */
11768
11768
  readBundle: async (widgetName) => {
11769
11769
  try {
11770
- return await ipcRenderer$c.invoke("widget:read-bundle", widgetName);
11770
+ return await ipcRenderer$d.invoke("widget:read-bundle", widgetName);
11771
11771
  } catch (error) {
11772
11772
  console.error(
11773
11773
  `[WidgetApi] Error reading bundle for ${widgetName}:`,
@@ -11784,7 +11784,7 @@ const widgetApi$2 = {
11784
11784
  */
11785
11785
  readAllBundles: async () => {
11786
11786
  try {
11787
- return await ipcRenderer$c.invoke("widget:read-all-bundles");
11787
+ return await ipcRenderer$d.invoke("widget:read-all-bundles");
11788
11788
  } catch (error) {
11789
11789
  console.error("[WidgetApi] Error reading all bundles:", error);
11790
11790
  return [];
@@ -11804,7 +11804,7 @@ const widgetApi$2 = {
11804
11804
  * });
11805
11805
  */
11806
11806
  onInstalled: (callback) => {
11807
- ipcRenderer$c.on("widget:installed", (event, data) => {
11807
+ ipcRenderer$d.on("widget:installed", (event, data) => {
11808
11808
  callback(data);
11809
11809
  });
11810
11810
  },
@@ -11822,7 +11822,7 @@ const widgetApi$2 = {
11822
11822
  * });
11823
11823
  */
11824
11824
  onLoaded: (callback) => {
11825
- ipcRenderer$c.on("widgets:loaded", (event, data) => {
11825
+ ipcRenderer$d.on("widgets:loaded", (event, data) => {
11826
11826
  callback(data);
11827
11827
  });
11828
11828
  },
@@ -11833,7 +11833,7 @@ const widgetApi$2 = {
11833
11833
  * @param {Function} callback - The callback to remove
11834
11834
  */
11835
11835
  removeInstalledListener: (callback) => {
11836
- ipcRenderer$c.removeListener("widget:installed", callback);
11836
+ ipcRenderer$d.removeListener("widget:installed", callback);
11837
11837
  },
11838
11838
 
11839
11839
  /**
@@ -11842,7 +11842,7 @@ const widgetApi$2 = {
11842
11842
  * @param {Function} callback - The callback to remove
11843
11843
  */
11844
11844
  removeLoadedListener: (callback) => {
11845
- ipcRenderer$c.removeListener("widgets:loaded", callback);
11845
+ ipcRenderer$d.removeListener("widgets:loaded", callback);
11846
11846
  },
11847
11847
  };
11848
11848
 
@@ -11855,7 +11855,7 @@ var widgetApi_1 = widgetApi$2;
11855
11855
  * Communicates with main process via IPC to handle encryption and file storage
11856
11856
  */
11857
11857
 
11858
- const { ipcRenderer: ipcRenderer$b } = require$$0$1;
11858
+ const { ipcRenderer: ipcRenderer$c } = require$$0$1;
11859
11859
  const {
11860
11860
  PROVIDER_SAVE,
11861
11861
  PROVIDER_LIST,
@@ -11887,7 +11887,7 @@ const providerApi$2 = {
11887
11887
  mcpConfig = null,
11888
11888
  allowedTools = null,
11889
11889
  ) =>
11890
- ipcRenderer$b.invoke(PROVIDER_SAVE, {
11890
+ ipcRenderer$c.invoke(PROVIDER_SAVE, {
11891
11891
  appId,
11892
11892
  providerName,
11893
11893
  providerType,
@@ -11905,7 +11905,7 @@ const providerApi$2 = {
11905
11905
  * @param {String} appId - the appId specified in the dash initialization
11906
11906
  * @returns {Promise<Array>} Array of provider objects with name, type, credentials
11907
11907
  */
11908
- listProviders: (appId) => ipcRenderer$b.invoke(PROVIDER_LIST, { appId }),
11908
+ listProviders: (appId) => ipcRenderer$c.invoke(PROVIDER_LIST, { appId }),
11909
11909
 
11910
11910
  /**
11911
11911
  * getProvider
@@ -11917,7 +11917,7 @@ const providerApi$2 = {
11917
11917
  * @returns {Promise<Object>} Provider object with name, type, credentials
11918
11918
  */
11919
11919
  getProvider: (appId, providerName) =>
11920
- ipcRenderer$b.invoke(PROVIDER_GET, { appId, providerName }),
11920
+ ipcRenderer$c.invoke(PROVIDER_GET, { appId, providerName }),
11921
11921
 
11922
11922
  /**
11923
11923
  * deleteProvider
@@ -11929,7 +11929,7 @@ const providerApi$2 = {
11929
11929
  * @returns {Promise}
11930
11930
  */
11931
11931
  deleteProvider: (appId, providerName) =>
11932
- ipcRenderer$b.invoke(PROVIDER_DELETE, { appId, providerName }),
11932
+ ipcRenderer$c.invoke(PROVIDER_DELETE, { appId, providerName }),
11933
11933
 
11934
11934
  /**
11935
11935
  * listProvidersForApplication
@@ -11939,14 +11939,14 @@ const providerApi$2 = {
11939
11939
  * @param {String} appId - the appId specified in the dash initialization
11940
11940
  */
11941
11941
  listProvidersForApplication: (appId) => {
11942
- ipcRenderer$b
11942
+ ipcRenderer$c
11943
11943
  .invoke(PROVIDER_LIST, { appId })
11944
11944
  .then((result) => {
11945
11945
  // Emit the event for ElectronDashboardApi to listen to
11946
- ipcRenderer$b.send("PROVIDER_LIST_COMPLETE", result);
11946
+ ipcRenderer$c.send("PROVIDER_LIST_COMPLETE", result);
11947
11947
  })
11948
11948
  .catch((error) => {
11949
- ipcRenderer$b.send("PROVIDER_LIST_ERROR", {
11949
+ ipcRenderer$c.send("PROVIDER_LIST_ERROR", {
11950
11950
  error: error.message,
11951
11951
  });
11952
11952
  });
@@ -11963,7 +11963,7 @@ const providerApi$2 = {
11963
11963
  providerType,
11964
11964
  credentials,
11965
11965
  ) => {
11966
- ipcRenderer$b
11966
+ ipcRenderer$c
11967
11967
  .invoke(PROVIDER_SAVE, {
11968
11968
  appId,
11969
11969
  providerName,
@@ -11971,10 +11971,10 @@ const providerApi$2 = {
11971
11971
  credentials,
11972
11972
  })
11973
11973
  .then((result) => {
11974
- ipcRenderer$b.send("PROVIDER_SAVE_COMPLETE", result);
11974
+ ipcRenderer$c.send("PROVIDER_SAVE_COMPLETE", result);
11975
11975
  })
11976
11976
  .catch((error) => {
11977
- ipcRenderer$b.send("PROVIDER_SAVE_ERROR", {
11977
+ ipcRenderer$c.send("PROVIDER_SAVE_ERROR", {
11978
11978
  error: error.message,
11979
11979
  });
11980
11980
  });
@@ -11986,13 +11986,13 @@ const providerApi$2 = {
11986
11986
  * Event-listener-based version for use with ElectronDashboardApi
11987
11987
  */
11988
11988
  getProviderForApplication: (appId, providerName) => {
11989
- ipcRenderer$b
11989
+ ipcRenderer$c
11990
11990
  .invoke(PROVIDER_GET, { appId, providerName })
11991
11991
  .then((result) => {
11992
- ipcRenderer$b.send("PROVIDER_GET_COMPLETE", result);
11992
+ ipcRenderer$c.send("PROVIDER_GET_COMPLETE", result);
11993
11993
  })
11994
11994
  .catch((error) => {
11995
- ipcRenderer$b.send("PROVIDER_GET_ERROR", {
11995
+ ipcRenderer$c.send("PROVIDER_GET_ERROR", {
11996
11996
  error: error.message,
11997
11997
  });
11998
11998
  });
@@ -12004,13 +12004,13 @@ const providerApi$2 = {
12004
12004
  * Event-listener-based version for use with ElectronDashboardApi
12005
12005
  */
12006
12006
  deleteProviderForApplication: (appId, providerName) => {
12007
- ipcRenderer$b
12007
+ ipcRenderer$c
12008
12008
  .invoke(PROVIDER_DELETE, { appId, providerName })
12009
12009
  .then((result) => {
12010
- ipcRenderer$b.send("PROVIDER_DELETE_COMPLETE", result);
12010
+ ipcRenderer$c.send("PROVIDER_DELETE_COMPLETE", result);
12011
12011
  })
12012
12012
  .catch((error) => {
12013
- ipcRenderer$b.send("PROVIDER_DELETE_ERROR", {
12013
+ ipcRenderer$c.send("PROVIDER_DELETE_ERROR", {
12014
12014
  error: error.message,
12015
12015
  });
12016
12016
  });
@@ -12026,7 +12026,7 @@ var providerApi_1 = providerApi$2;
12026
12026
  * Communicates with main process via IPC to manage MCP server lifecycle.
12027
12027
  */
12028
12028
 
12029
- const { ipcRenderer: ipcRenderer$a } = require$$0$1;
12029
+ const { ipcRenderer: ipcRenderer$b } = require$$0$1;
12030
12030
  const {
12031
12031
  MCP_START_SERVER,
12032
12032
  MCP_STOP_SERVER,
@@ -12050,7 +12050,7 @@ const mcpApi$2 = {
12050
12050
  * @returns {Promise<{ success, serverName, tools, status } | { error, message }>}
12051
12051
  */
12052
12052
  startServer: (serverName, mcpConfig, credentials) =>
12053
- ipcRenderer$a.invoke(MCP_START_SERVER, {
12053
+ ipcRenderer$b.invoke(MCP_START_SERVER, {
12054
12054
  serverName,
12055
12055
  mcpConfig,
12056
12056
  credentials,
@@ -12064,7 +12064,7 @@ const mcpApi$2 = {
12064
12064
  * @returns {Promise<{ success, serverName } | { error, message }>}
12065
12065
  */
12066
12066
  stopServer: (serverName) =>
12067
- ipcRenderer$a.invoke(MCP_STOP_SERVER, { serverName }),
12067
+ ipcRenderer$b.invoke(MCP_STOP_SERVER, { serverName }),
12068
12068
 
12069
12069
  /**
12070
12070
  * listTools
@@ -12073,7 +12073,7 @@ const mcpApi$2 = {
12073
12073
  * @param {string} serverName the server name
12074
12074
  * @returns {Promise<{ tools } | { error, message }>}
12075
12075
  */
12076
- listTools: (serverName) => ipcRenderer$a.invoke(MCP_LIST_TOOLS, { serverName }),
12076
+ listTools: (serverName) => ipcRenderer$b.invoke(MCP_LIST_TOOLS, { serverName }),
12077
12077
 
12078
12078
  /**
12079
12079
  * callTool
@@ -12086,7 +12086,7 @@ const mcpApi$2 = {
12086
12086
  * @returns {Promise<{ result } | { error, message }>}
12087
12087
  */
12088
12088
  callTool: (serverName, toolName, args, allowedTools = null) =>
12089
- ipcRenderer$a.invoke(MCP_CALL_TOOL, {
12089
+ ipcRenderer$b.invoke(MCP_CALL_TOOL, {
12090
12090
  serverName,
12091
12091
  toolName,
12092
12092
  args,
@@ -12101,7 +12101,7 @@ const mcpApi$2 = {
12101
12101
  * @returns {Promise<{ resources } | { error, message }>}
12102
12102
  */
12103
12103
  listResources: (serverName) =>
12104
- ipcRenderer$a.invoke(MCP_LIST_RESOURCES, { serverName }),
12104
+ ipcRenderer$b.invoke(MCP_LIST_RESOURCES, { serverName }),
12105
12105
 
12106
12106
  /**
12107
12107
  * readResource
@@ -12112,7 +12112,7 @@ const mcpApi$2 = {
12112
12112
  * @returns {Promise<{ resource } | { error, message }>}
12113
12113
  */
12114
12114
  readResource: (serverName, uri) =>
12115
- ipcRenderer$a.invoke(MCP_READ_RESOURCE, { serverName, uri }),
12115
+ ipcRenderer$b.invoke(MCP_READ_RESOURCE, { serverName, uri }),
12116
12116
 
12117
12117
  /**
12118
12118
  * getServerStatus
@@ -12122,7 +12122,7 @@ const mcpApi$2 = {
12122
12122
  * @returns {Promise<{ status, tools, error }>}
12123
12123
  */
12124
12124
  getServerStatus: (serverName) =>
12125
- ipcRenderer$a.invoke(MCP_SERVER_STATUS, { serverName }),
12125
+ ipcRenderer$b.invoke(MCP_SERVER_STATUS, { serverName }),
12126
12126
 
12127
12127
  /**
12128
12128
  * getCatalog
@@ -12130,7 +12130,7 @@ const mcpApi$2 = {
12130
12130
  *
12131
12131
  * @returns {Promise<{ catalog } | { error, message }>}
12132
12132
  */
12133
- getCatalog: () => ipcRenderer$a.invoke(MCP_GET_CATALOG),
12133
+ getCatalog: () => ipcRenderer$b.invoke(MCP_GET_CATALOG),
12134
12134
 
12135
12135
  /**
12136
12136
  * runAuth
@@ -12142,7 +12142,7 @@ const mcpApi$2 = {
12142
12142
  * @returns {Promise<{ success } | { error, message }>}
12143
12143
  */
12144
12144
  runAuth: (mcpConfig, credentials, authCommand) =>
12145
- ipcRenderer$a.invoke(MCP_RUN_AUTH, { mcpConfig, credentials, authCommand }),
12145
+ ipcRenderer$b.invoke(MCP_RUN_AUTH, { mcpConfig, credentials, authCommand }),
12146
12146
  };
12147
12147
 
12148
12148
  var mcpApi_1 = mcpApi$2;
@@ -12160,7 +12160,7 @@ var mcpApi_1 = mcpApi$2;
12160
12160
  * mainApi.registry.checkUpdates([{ name: "weather-widgets", version: "1.0.0" }])
12161
12161
  */
12162
12162
 
12163
- const { ipcRenderer: ipcRenderer$9 } = require$$0$1;
12163
+ const { ipcRenderer: ipcRenderer$a } = require$$0$1;
12164
12164
 
12165
12165
  const registryApi$2 = {
12166
12166
  /**
@@ -12170,7 +12170,7 @@ const registryApi$2 = {
12170
12170
  */
12171
12171
  fetchIndex: async (forceRefresh = false) => {
12172
12172
  try {
12173
- return await ipcRenderer$9.invoke("registry:fetch-index", forceRefresh);
12173
+ return await ipcRenderer$a.invoke("registry:fetch-index", forceRefresh);
12174
12174
  } catch (error) {
12175
12175
  console.error("[RegistryApi] Error fetching index:", error);
12176
12176
  throw error;
@@ -12185,7 +12185,7 @@ const registryApi$2 = {
12185
12185
  */
12186
12186
  search: async (query = "", filters = {}) => {
12187
12187
  try {
12188
- return await ipcRenderer$9.invoke("registry:search", query, filters);
12188
+ return await ipcRenderer$a.invoke("registry:search", query, filters);
12189
12189
  } catch (error) {
12190
12190
  console.error("[RegistryApi] Error searching registry:", error);
12191
12191
  throw error;
@@ -12199,7 +12199,7 @@ const registryApi$2 = {
12199
12199
  */
12200
12200
  getPackage: async (packageName) => {
12201
12201
  try {
12202
- return await ipcRenderer$9.invoke("registry:get-package", packageName);
12202
+ return await ipcRenderer$a.invoke("registry:get-package", packageName);
12203
12203
  } catch (error) {
12204
12204
  console.error(
12205
12205
  `[RegistryApi] Error getting package ${packageName}:`,
@@ -12216,7 +12216,7 @@ const registryApi$2 = {
12216
12216
  */
12217
12217
  checkUpdates: async (installedWidgets = []) => {
12218
12218
  try {
12219
- return await ipcRenderer$9.invoke(
12219
+ return await ipcRenderer$a.invoke(
12220
12220
  "registry:check-updates",
12221
12221
  installedWidgets,
12222
12222
  );
@@ -12234,7 +12234,7 @@ const registryApi$2 = {
12234
12234
  */
12235
12235
  searchDashboards: async (query = "", filters = {}) => {
12236
12236
  try {
12237
- return await ipcRenderer$9.invoke(
12237
+ return await ipcRenderer$a.invoke(
12238
12238
  "registry:search-dashboards",
12239
12239
  query,
12240
12240
  filters,
@@ -12254,17 +12254,17 @@ var registryApi_1 = registryApi$2;
12254
12254
  * Handle the theme configuration file
12255
12255
  */
12256
12256
 
12257
- const { ipcRenderer: ipcRenderer$8 } = require$$0$1;
12257
+ const { ipcRenderer: ipcRenderer$9 } = require$$0$1;
12258
12258
 
12259
12259
  const { THEME_LIST, THEME_SAVE, THEME_DELETE } = events$8;
12260
12260
 
12261
12261
  const themeApi$2 = {
12262
12262
  listThemesForApplication: (appId) =>
12263
- ipcRenderer$8.invoke(THEME_LIST, { appId }),
12263
+ ipcRenderer$9.invoke(THEME_LIST, { appId }),
12264
12264
  saveThemeForApplication: (appId, themeName, themeObject) =>
12265
- ipcRenderer$8.invoke(THEME_SAVE, { appId, themeName, themeObject }),
12265
+ ipcRenderer$9.invoke(THEME_SAVE, { appId, themeName, themeObject }),
12266
12266
  deleteThemeForApplication: (appId, themeKey) =>
12267
- ipcRenderer$8.invoke(THEME_DELETE, { appId, themeKey }),
12267
+ ipcRenderer$9.invoke(THEME_DELETE, { appId, themeKey }),
12268
12268
  };
12269
12269
 
12270
12270
  var themeApi_1 = themeApi$2;
@@ -12276,7 +12276,7 @@ var themeApi_1 = themeApi$2;
12276
12276
  */
12277
12277
 
12278
12278
  // ipcRenderer that must be used to invoke the events
12279
- const { ipcRenderer: ipcRenderer$7 } = require$$0$1;
12279
+ const { ipcRenderer: ipcRenderer$8 } = require$$0$1;
12280
12280
 
12281
12281
  const {
12282
12282
  ALGOLIA_LIST_INDICES,
@@ -12290,10 +12290,10 @@ const {
12290
12290
 
12291
12291
  const algoliaApi$2 = {
12292
12292
  listIndices: (application) =>
12293
- ipcRenderer$7.invoke(ALGOLIA_LIST_INDICES, application),
12293
+ ipcRenderer$8.invoke(ALGOLIA_LIST_INDICES, application),
12294
12294
 
12295
12295
  browseObjects: (appId, apiKey, indexName) => {
12296
- ipcRenderer$7.invoke(ALGOLIA_BROWSE_OBJECTS, {
12296
+ ipcRenderer$8.invoke(ALGOLIA_BROWSE_OBJECTS, {
12297
12297
  appId,
12298
12298
  apiKey,
12299
12299
  indexName,
@@ -12301,10 +12301,10 @@ const algoliaApi$2 = {
12301
12301
  });
12302
12302
  },
12303
12303
 
12304
- saveSynonyms: () => ipcRenderer$7.invoke(ALGOLIA_SAVE_SYNONYMS, {}),
12304
+ saveSynonyms: () => ipcRenderer$8.invoke(ALGOLIA_SAVE_SYNONYMS, {}),
12305
12305
 
12306
12306
  getAnalyticsForQuery: (application, indexName, query) =>
12307
- ipcRenderer$7.invoke(ALGOLIA_ANALYTICS_FOR_QUERY, {
12307
+ ipcRenderer$8.invoke(ALGOLIA_ANALYTICS_FOR_QUERY, {
12308
12308
  application,
12309
12309
  indexName,
12310
12310
  query,
@@ -12317,7 +12317,7 @@ const algoliaApi$2 = {
12317
12317
  dir,
12318
12318
  createIfNotExists = false,
12319
12319
  ) =>
12320
- ipcRenderer$7.invoke(ALGOLIA_PARTIAL_UPDATE_OBJECTS, {
12320
+ ipcRenderer$8.invoke(ALGOLIA_PARTIAL_UPDATE_OBJECTS, {
12321
12321
  appId,
12322
12322
  apiKey,
12323
12323
  indexName,
@@ -12326,7 +12326,7 @@ const algoliaApi$2 = {
12326
12326
  }),
12327
12327
 
12328
12328
  createBatchesFromFile: (filepath, batchFilepath, batchSize) => {
12329
- ipcRenderer$7.invoke(ALGOLIA_CREATE_BATCH, {
12329
+ ipcRenderer$8.invoke(ALGOLIA_CREATE_BATCH, {
12330
12330
  filepath,
12331
12331
  batchFilepath,
12332
12332
  batchSize,
@@ -12334,7 +12334,7 @@ const algoliaApi$2 = {
12334
12334
  },
12335
12335
 
12336
12336
  browseObjectsToFile: (appId, apiKey, indexName, toFilename, query = "") => {
12337
- ipcRenderer$7.invoke(ALGOLIA_BROWSE_OBJECTS, {
12337
+ ipcRenderer$8.invoke(ALGOLIA_BROWSE_OBJECTS, {
12338
12338
  appId,
12339
12339
  apiKey,
12340
12340
  indexName,
@@ -12344,7 +12344,7 @@ const algoliaApi$2 = {
12344
12344
  },
12345
12345
 
12346
12346
  search: (appId, apiKey, indexName, query = "", options = {}) =>
12347
- ipcRenderer$7.invoke(ALGOLIA_SEARCH, {
12347
+ ipcRenderer$8.invoke(ALGOLIA_SEARCH, {
12348
12348
  appId,
12349
12349
  apiKey,
12350
12350
  indexName,
@@ -12359,14 +12359,14 @@ var algoliaApi_1 = algoliaApi$2;
12359
12359
  * openAI
12360
12360
  */
12361
12361
 
12362
- const { ipcRenderer: ipcRenderer$6 } = require$$0$1;
12362
+ const { ipcRenderer: ipcRenderer$7 } = require$$0$1;
12363
12363
 
12364
12364
  const { OPENAI_DESCRIBE_IMAGE } = openaiEvents$1;
12365
12365
 
12366
12366
  const openaiApi$2 = {
12367
12367
  // convert a json array of objects to a csv string and save to file
12368
12368
  describeImage: (imageUrl, apiKey, prompt = "What's in this image?") =>
12369
- ipcRenderer$6.invoke(OPENAI_DESCRIBE_IMAGE, { imageUrl, apiKey, prompt }),
12369
+ ipcRenderer$7.invoke(OPENAI_DESCRIBE_IMAGE, { imageUrl, apiKey, prompt }),
12370
12370
  };
12371
12371
 
12372
12372
  var openaiApi_1 = openaiApi$2;
@@ -12377,14 +12377,14 @@ var openaiApi_1 = openaiApi$2;
12377
12377
  */
12378
12378
 
12379
12379
  // ipcRenderer that must be used to invoke the events
12380
- const { ipcRenderer: ipcRenderer$5 } = require$$0$1;
12380
+ const { ipcRenderer: ipcRenderer$6 } = require$$0$1;
12381
12381
 
12382
12382
  const { MENU_ITEMS_SAVE, MENU_ITEMS_LIST } = events$8;
12383
12383
 
12384
12384
  const menuItemsApi$2 = {
12385
12385
  saveMenuItem: (appId, menuItem) =>
12386
- ipcRenderer$5.invoke(MENU_ITEMS_SAVE, { appId, menuItem }),
12387
- listMenuItems: (appId) => ipcRenderer$5.invoke(MENU_ITEMS_LIST, { appId }),
12386
+ ipcRenderer$6.invoke(MENU_ITEMS_SAVE, { appId, menuItem }),
12387
+ listMenuItems: (appId) => ipcRenderer$6.invoke(MENU_ITEMS_LIST, { appId }),
12388
12388
  };
12389
12389
 
12390
12390
  var menuItemsApi_1 = menuItemsApi$2;
@@ -12396,12 +12396,12 @@ var menuItemsApi_1 = menuItemsApi$2;
12396
12396
  */
12397
12397
 
12398
12398
  // ipcRenderer that must be used to invoke the events
12399
- const { ipcRenderer: ipcRenderer$4 } = require$$0$1;
12399
+ const { ipcRenderer: ipcRenderer$5 } = require$$0$1;
12400
12400
 
12401
12401
  const pluginApi$2 = {
12402
12402
  install: (packageName, filepath) =>
12403
- ipcRenderer$4.invoke("plugin-install", { packageName, filepath }),
12404
- uninstall: (filepath) => ipcRenderer$4.invoke("plugin-uninstall", filepath),
12403
+ ipcRenderer$5.invoke("plugin-install", { packageName, filepath }),
12404
+ uninstall: (filepath) => ipcRenderer$5.invoke("plugin-uninstall", filepath),
12405
12405
  };
12406
12406
 
12407
12407
  var pluginApi_1 = pluginApi$2;
@@ -12414,7 +12414,7 @@ var pluginApi_1 = pluginApi$2;
12414
12414
  * tool-use events, and request cancellation.
12415
12415
  */
12416
12416
 
12417
- const { ipcRenderer: ipcRenderer$3 } = require$$0$1;
12417
+ const { ipcRenderer: ipcRenderer$4 } = require$$0$1;
12418
12418
  const {
12419
12419
  LLM_SEND_MESSAGE,
12420
12420
  LLM_ABORT_REQUEST,
@@ -12436,7 +12436,7 @@ const _listenerMap = new Map();
12436
12436
  function _addListener(channel, callback) {
12437
12437
  const id = String(++_nextListenerId);
12438
12438
  const wrapped = (_event, data) => callback(data);
12439
- ipcRenderer$3.on(channel, wrapped);
12439
+ ipcRenderer$4.on(channel, wrapped);
12440
12440
  _listenerMap.set(id, { channel, wrapped });
12441
12441
  return id;
12442
12442
  }
@@ -12451,7 +12451,7 @@ const llmApi$2 = {
12451
12451
  * @returns {Promise<void>}
12452
12452
  */
12453
12453
  sendMessage: (requestId, params) =>
12454
- ipcRenderer$3.invoke(LLM_SEND_MESSAGE, { requestId, ...params }),
12454
+ ipcRenderer$4.invoke(LLM_SEND_MESSAGE, { requestId, ...params }),
12455
12455
 
12456
12456
  /**
12457
12457
  * abortRequest
@@ -12461,7 +12461,7 @@ const llmApi$2 = {
12461
12461
  * @returns {Promise<{ success: boolean }>}
12462
12462
  */
12463
12463
  abortRequest: (requestId) =>
12464
- ipcRenderer$3.invoke(LLM_ABORT_REQUEST, { requestId }),
12464
+ ipcRenderer$4.invoke(LLM_ABORT_REQUEST, { requestId }),
12465
12465
 
12466
12466
  /**
12467
12467
  * listConnectedTools
@@ -12469,7 +12469,7 @@ const llmApi$2 = {
12469
12469
  *
12470
12470
  * @returns {Promise<Array<{ serverName, tools, resources, status }>>}
12471
12471
  */
12472
- listConnectedTools: () => ipcRenderer$3.invoke(LLM_LIST_CONNECTED_TOOLS),
12472
+ listConnectedTools: () => ipcRenderer$4.invoke(LLM_LIST_CONNECTED_TOOLS),
12473
12473
 
12474
12474
  /**
12475
12475
  * checkCliAvailable
@@ -12477,7 +12477,7 @@ const llmApi$2 = {
12477
12477
  *
12478
12478
  * @returns {Promise<{ available: boolean, path?: string }>}
12479
12479
  */
12480
- checkCliAvailable: () => ipcRenderer$3.invoke(LLM_CHECK_CLI_AVAILABLE),
12480
+ checkCliAvailable: () => ipcRenderer$4.invoke(LLM_CHECK_CLI_AVAILABLE),
12481
12481
 
12482
12482
  /**
12483
12483
  * clearCliSession
@@ -12487,7 +12487,7 @@ const llmApi$2 = {
12487
12487
  * @returns {Promise<{ success: boolean }>}
12488
12488
  */
12489
12489
  clearCliSession: (widgetUuid) =>
12490
- ipcRenderer$3.invoke(LLM_CLEAR_CLI_SESSION, { widgetUuid }),
12490
+ ipcRenderer$4.invoke(LLM_CLEAR_CLI_SESSION, { widgetUuid }),
12491
12491
 
12492
12492
  /**
12493
12493
  * getCliSessionStatus
@@ -12497,7 +12497,7 @@ const llmApi$2 = {
12497
12497
  * @returns {Promise<{ hasSession: boolean, sessionId?: string, isProcessActive: boolean }>}
12498
12498
  */
12499
12499
  getCliSessionStatus: (widgetUuid) =>
12500
- ipcRenderer$3.invoke(LLM_CLI_SESSION_STATUS, { widgetUuid }),
12500
+ ipcRenderer$4.invoke(LLM_CLI_SESSION_STATUS, { widgetUuid }),
12501
12501
 
12502
12502
  /**
12503
12503
  * endCliSession
@@ -12507,7 +12507,7 @@ const llmApi$2 = {
12507
12507
  * @returns {Promise<{ success: boolean }>}
12508
12508
  */
12509
12509
  endCliSession: (widgetUuid) =>
12510
- ipcRenderer$3.invoke(LLM_CLI_END_SESSION, { widgetUuid }),
12510
+ ipcRenderer$4.invoke(LLM_CLI_END_SESSION, { widgetUuid }),
12511
12511
 
12512
12512
  // --- Stream event listeners ---
12513
12513
  // Each on* method returns an opaque string ID. Strings cross the
@@ -12541,7 +12541,7 @@ const llmApi$2 = {
12541
12541
  const listenerId = id !== undefined ? String(id) : String(idOrChannel);
12542
12542
  const entry = _listenerMap.get(listenerId);
12543
12543
  if (entry) {
12544
- ipcRenderer$3.removeListener(entry.channel, entry.wrapped);
12544
+ ipcRenderer$4.removeListener(entry.channel, entry.wrapped);
12545
12545
  _listenerMap.delete(listenerId);
12546
12546
  }
12547
12547
  },
@@ -12553,14 +12553,14 @@ const llmApi$2 = {
12553
12553
  */
12554
12554
  removeAllStreamListeners: () => {
12555
12555
  for (const [, entry] of _listenerMap) {
12556
- ipcRenderer$3.removeListener(entry.channel, entry.wrapped);
12556
+ ipcRenderer$4.removeListener(entry.channel, entry.wrapped);
12557
12557
  }
12558
12558
  _listenerMap.clear();
12559
- ipcRenderer$3.removeAllListeners(LLM_STREAM_DELTA);
12560
- ipcRenderer$3.removeAllListeners(LLM_STREAM_TOOL_CALL);
12561
- ipcRenderer$3.removeAllListeners(LLM_STREAM_TOOL_RESULT);
12562
- ipcRenderer$3.removeAllListeners(LLM_STREAM_COMPLETE);
12563
- ipcRenderer$3.removeAllListeners(LLM_STREAM_ERROR);
12559
+ ipcRenderer$4.removeAllListeners(LLM_STREAM_DELTA);
12560
+ ipcRenderer$4.removeAllListeners(LLM_STREAM_TOOL_CALL);
12561
+ ipcRenderer$4.removeAllListeners(LLM_STREAM_TOOL_RESULT);
12562
+ ipcRenderer$4.removeAllListeners(LLM_STREAM_COMPLETE);
12563
+ ipcRenderer$4.removeAllListeners(LLM_STREAM_ERROR);
12564
12564
  },
12565
12565
  };
12566
12566
 
@@ -12574,7 +12574,7 @@ var llmApi_1 = llmApi$2;
12574
12574
  * and manage the response cache.
12575
12575
  */
12576
12576
 
12577
- const { ipcRenderer: ipcRenderer$2 } = require$$0$1;
12577
+ const { ipcRenderer: ipcRenderer$3 } = require$$0$1;
12578
12578
  const {
12579
12579
  CLIENT_CACHE_INVALIDATE,
12580
12580
  CLIENT_CACHE_INVALIDATE_ALL,
@@ -12591,28 +12591,28 @@ const clientCacheApi$2 = {
12591
12591
  * @returns {Promise<{success: boolean}>}
12592
12592
  */
12593
12593
  invalidate: (appId, providerName) =>
12594
- ipcRenderer$2.invoke(CLIENT_CACHE_INVALIDATE, { appId, providerName }),
12594
+ ipcRenderer$3.invoke(CLIENT_CACHE_INVALIDATE, { appId, providerName }),
12595
12595
 
12596
12596
  /**
12597
12597
  * Invalidate all cached clients.
12598
12598
  *
12599
12599
  * @returns {Promise<{success: boolean}>}
12600
12600
  */
12601
- invalidateAll: () => ipcRenderer$2.invoke(CLIENT_CACHE_INVALIDATE_ALL),
12601
+ invalidateAll: () => ipcRenderer$3.invoke(CLIENT_CACHE_INVALIDATE_ALL),
12602
12602
 
12603
12603
  /**
12604
12604
  * Clear the response cache.
12605
12605
  *
12606
12606
  * @returns {Promise<{success: boolean}>}
12607
12607
  */
12608
- clearResponseCache: () => ipcRenderer$2.invoke(RESPONSE_CACHE_CLEAR),
12608
+ clearResponseCache: () => ipcRenderer$3.invoke(RESPONSE_CACHE_CLEAR),
12609
12609
 
12610
12610
  /**
12611
12611
  * Get response cache statistics.
12612
12612
  *
12613
12613
  * @returns {Promise<{entries: number, inflight: number, keys: string[]}>}
12614
12614
  */
12615
- responseCacheStats: () => ipcRenderer$2.invoke(RESPONSE_CACHE_STATS),
12615
+ responseCacheStats: () => ipcRenderer$3.invoke(RESPONSE_CACHE_STATS),
12616
12616
  };
12617
12617
 
12618
12618
  var clientCacheApi_1 = clientCacheApi$2;
@@ -12624,7 +12624,7 @@ var clientCacheApi_1 = clientCacheApi$2;
12624
12624
  * Exposed via contextBridge through mainApi.
12625
12625
  */
12626
12626
 
12627
- const { ipcRenderer: ipcRenderer$1 } = require$$0$1;
12627
+ const { ipcRenderer: ipcRenderer$2 } = require$$0$1;
12628
12628
  const {
12629
12629
  DASHBOARD_CONFIG_EXPORT,
12630
12630
  DASHBOARD_CONFIG_IMPORT,
@@ -12646,7 +12646,7 @@ const dashboardConfigApi$2 = {
12646
12646
  * @returns {Promise<Object>} Result with success, filePath, and config
12647
12647
  */
12648
12648
  exportDashboardConfig: (appId, workspaceId, options = {}) =>
12649
- ipcRenderer$1.invoke(DASHBOARD_CONFIG_EXPORT, {
12649
+ ipcRenderer$2.invoke(DASHBOARD_CONFIG_EXPORT, {
12650
12650
  appId,
12651
12651
  workspaceId,
12652
12652
  options,
@@ -12661,7 +12661,7 @@ const dashboardConfigApi$2 = {
12661
12661
  * @returns {Promise<Object>} Result with success, workspace, and summary
12662
12662
  */
12663
12663
  importDashboardConfig: (appId) =>
12664
- ipcRenderer$1.invoke(DASHBOARD_CONFIG_IMPORT, { appId }),
12664
+ ipcRenderer$2.invoke(DASHBOARD_CONFIG_IMPORT, { appId }),
12665
12665
 
12666
12666
  /**
12667
12667
  * Install a dashboard from the registry by package name.
@@ -12673,7 +12673,7 @@ const dashboardConfigApi$2 = {
12673
12673
  * @returns {Promise<Object>} Result with success, workspace, and summary
12674
12674
  */
12675
12675
  installDashboardFromRegistry: (appId, packageName) =>
12676
- ipcRenderer$1.invoke(DASHBOARD_CONFIG_INSTALL, {
12676
+ ipcRenderer$2.invoke(DASHBOARD_CONFIG_INSTALL, {
12677
12677
  appId,
12678
12678
  packageName,
12679
12679
  }),
@@ -12686,7 +12686,7 @@ const dashboardConfigApi$2 = {
12686
12686
  * @returns {Promise<Object>} Compatibility report with per-widget status
12687
12687
  */
12688
12688
  checkDashboardCompatibility: (appId, dashboardWidgets) =>
12689
- ipcRenderer$1.invoke(DASHBOARD_CONFIG_COMPATIBILITY, {
12689
+ ipcRenderer$2.invoke(DASHBOARD_CONFIG_COMPATIBILITY, {
12690
12690
  appId,
12691
12691
  dashboardWidgets,
12692
12692
  }),
@@ -12702,7 +12702,7 @@ const dashboardConfigApi$2 = {
12702
12702
  * @returns {Promise<Object>} Result with success, manifest, filePath
12703
12703
  */
12704
12704
  prepareDashboardForPublish: (appId, workspaceId, options = {}) =>
12705
- ipcRenderer$1.invoke(DASHBOARD_CONFIG_PUBLISH, {
12705
+ ipcRenderer$2.invoke(DASHBOARD_CONFIG_PUBLISH, {
12706
12706
  appId,
12707
12707
  workspaceId,
12708
12708
  options,
@@ -12716,7 +12716,7 @@ const dashboardConfigApi$2 = {
12716
12716
  * @returns {Promise<Object>} Preview with metadata, widgets, wiring, compatibility
12717
12717
  */
12718
12718
  getDashboardPreview: (packageName) =>
12719
- ipcRenderer$1.invoke(DASHBOARD_CONFIG_PREVIEW, { packageName }),
12719
+ ipcRenderer$2.invoke(DASHBOARD_CONFIG_PREVIEW, { packageName }),
12720
12720
 
12721
12721
  /**
12722
12722
  * Check installed dashboards for available updates.
@@ -12725,7 +12725,7 @@ const dashboardConfigApi$2 = {
12725
12725
  * @returns {Promise<Object>} Result with updates array
12726
12726
  */
12727
12727
  checkDashboardUpdates: (appId) =>
12728
- ipcRenderer$1.invoke(DASHBOARD_CONFIG_CHECK_UPDATES, { appId }),
12728
+ ipcRenderer$2.invoke(DASHBOARD_CONFIG_CHECK_UPDATES, { appId }),
12729
12729
 
12730
12730
  /**
12731
12731
  * Get provider setup manifest for a dashboard's requirements.
@@ -12735,7 +12735,7 @@ const dashboardConfigApi$2 = {
12735
12735
  * @returns {Promise<Object>} Setup manifest with per-provider status
12736
12736
  */
12737
12737
  getProviderSetupManifest: (appId, requiredProviders) =>
12738
- ipcRenderer$1.invoke(DASHBOARD_CONFIG_PROVIDER_SETUP, {
12738
+ ipcRenderer$2.invoke(DASHBOARD_CONFIG_PROVIDER_SETUP, {
12739
12739
  appId,
12740
12740
  requiredProviders,
12741
12741
  }),
@@ -12743,6 +12743,40 @@ const dashboardConfigApi$2 = {
12743
12743
 
12744
12744
  var dashboardConfigApi_1 = dashboardConfigApi$2;
12745
12745
 
12746
+ /**
12747
+ * dashboardRatingsApi.js
12748
+ *
12749
+ * IPC bridge for dashboard ratings (renderer side).
12750
+ */
12751
+
12752
+ const { ipcRenderer: ipcRenderer$1 } = require$$0$1;
12753
+ const {
12754
+ DASHBOARD_RATING_SAVE,
12755
+ DASHBOARD_RATING_GET,
12756
+ DASHBOARD_RATING_LIST,
12757
+ DASHBOARD_RATING_DELETE,
12758
+ } = events$8;
12759
+
12760
+ const dashboardRatingsApi$1 = {
12761
+ saveDashboardRating: (appId, packageName, rating) =>
12762
+ ipcRenderer$1.invoke(DASHBOARD_RATING_SAVE, {
12763
+ appId,
12764
+ packageName,
12765
+ rating,
12766
+ }),
12767
+
12768
+ getDashboardRating: (appId, packageName) =>
12769
+ ipcRenderer$1.invoke(DASHBOARD_RATING_GET, { appId, packageName }),
12770
+
12771
+ listDashboardRatings: (appId) =>
12772
+ ipcRenderer$1.invoke(DASHBOARD_RATING_LIST, { appId }),
12773
+
12774
+ deleteDashboardRating: (appId, packageName) =>
12775
+ ipcRenderer$1.invoke(DASHBOARD_RATING_DELETE, { appId, packageName }),
12776
+ };
12777
+
12778
+ var dashboardRatingsApi_1 = dashboardRatingsApi$1;
12779
+
12746
12780
  /**
12747
12781
  * mainApi.js
12748
12782
  *
@@ -12775,6 +12809,7 @@ const pluginApi$1 = pluginApi_1;
12775
12809
  const llmApi$1 = llmApi_1;
12776
12810
  const clientCacheApi$1 = clientCacheApi_1;
12777
12811
  const dashboardConfigApi$1 = dashboardConfigApi_1;
12812
+ const dashboardRatingsApi = dashboardRatingsApi_1;
12778
12813
 
12779
12814
  // Events constants
12780
12815
  const events$1 = events$8;
@@ -12847,6 +12882,7 @@ function createMainApi$1(extensions = {}) {
12847
12882
  plugins: pluginApi$1,
12848
12883
  clientCache: clientCacheApi$1,
12849
12884
  dashboardConfig: dashboardConfigApi$1,
12885
+ dashboardRatings: dashboardRatingsApi,
12850
12886
 
12851
12887
  widgetEvent: {
12852
12888
  publish: (eventType, content) => {