enso/app/ide-desktop
somebody1234 d5a04a767e
Fix errors in GUI WebSockets (#10421)
- Fix https://github.com/enso-org/cloud-v2/issues/1337
- Fix #10381 (same issue)
- This was caused by queued execution context tasks delaying the disposal of the WebSocket connections - I guess because the WebSocket is closed, either the queue never reaches that point, or retries take too long to reach that point?
- There was also another issue caused by the Dashboard incorrectly caching the `project`, causing the endpoint URLs to become outdated.

Misc changes:
- Change `Editor.tsx` to not return two different component trees. This avoids React unmounting and re-mounting the GUI app.

# Important Notes
None
2024-07-04 12:48:57 +00:00
..
.vscode Keyboard navigation between components (#9499) 2024-04-05 07:21:02 +00:00
lib Fix errors in GUI WebSockets (#10421) 2024-07-04 12:48:57 +00:00
.example.env Offline Mode Support (#10317) 2024-06-21 07:14:40 +00:00
.gitignore Refactor configuration keys out of repository (#8895) 2024-03-08 03:14:26 +00:00
eslint.config.js Fix importing .enso-project files (#10379) 2024-06-27 17:48:51 +00:00
package.json Adjust Colours. (#10417) 2024-07-01 20:01:18 +00:00
README.md Use backend errors in toast notifications (#9078) 2024-02-26 14:51:44 +00:00
tsconfig.json [Gui2] Opening projects and language server connection (#7813) 2023-09-22 03:43:25 +00:00

Desktop app

This folder contains projects related to the desktop app.

Folder structure

Refer to the README.md in each individual module (if it exists) for the internal folder structure of the module.

  • assets/: Icons and images used by other modules. Currently these are only used by dashboard/.
  • client/: The code for the Electron desktop app.
  • common/: Utility functions required by multiple other modules.
  • content/: The entry point for the GUI1 web app. This is the main page for the desktop app.
  • content-config/: The statically-typed configuration object for content/.
  • dashboard/: The dashboard, used to manage projects. It launches the GUI (located in content/ for GUI1, or /app/gui2/ for GUI2) when a project is opened.
  • esbuild-plugin-copy-directories/: An ESBuild plugin for continuously copying directories from the a given location to a given subdirectory of the build output directory.
  • icons/: Generates the logo for the app.
  • ts-plugin-namespace-auto-import/: (WIP) A TypeScript plugin to change auto-import to use import * as moduleName rather than import {}.
  • types/: Miscellaneous types used by multiple modules.