@lvce-editor/main-area-worker 9.72.2 → 9.73.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,5 +1,71 @@
1
1
  # Main Area Worker
2
2
 
3
- WebWorker for the main area functionality in Lvce Editor.
3
+ The Main Area Worker manages the editor's open tabs and editor groups in Lvce Editor. It handles opening and saving editors, tab and group layout changes, and the worker side of main-area RPC. Its command handlers are collected in [`CommandMap.ts`](packages/main-area-worker/src/parts/CommandMap/CommandMap.ts).
4
4
 
5
- <!-- -->
5
+ ## Repository layout
6
+
7
+ ```text
8
+ .
9
+ ├── packages/main-area-worker # Worker source and unit tests
10
+ ├── packages/build # Build, development, static export, and measurement scripts
11
+ ├── packages/e2e # Browser end-to-end tests
12
+ └── packages/e2e-integration # Scenarios and scripts for application integration tests
13
+ ```
14
+
15
+ The worker starts at [`mainAreaWorkerMain.ts`](packages/main-area-worker/src/mainAreaWorkerMain.ts), which invokes [`MainAreaMain.ts`](packages/main-area-worker/src/parts/MainAreaMain/MainAreaMain.ts). Unit tests are in `packages/main-area-worker/test`.
16
+
17
+ ## Requirements
18
+
19
+ - Node.js `24.13.0` or a compatible version, as specified in [`.nvmrc`](.nvmrc)
20
+ - npm
21
+ - Playwright browser binaries for the browser end-to-end tests
22
+
23
+ Install dependencies from the repository root:
24
+
25
+ ```sh
26
+ npm ci
27
+ ```
28
+
29
+ ## Development commands
30
+
31
+ Run these commands from the repository root:
32
+
33
+ | Command | Description |
34
+ | ---------------------- | ----------------------------------------------------------------------------------------- |
35
+ | `npm run build` | Builds the worker and writes its package output to `.tmp/dist`. |
36
+ | `npm run build:watch` | Rebuilds the worker when source files change. |
37
+ | `npm run dev` | Runs the watch build and the local test server for `packages/e2e`. |
38
+ | `npm run build:static` | Exports a static test build to `.tmp/static`; run `npm run build` first. |
39
+ | `npm test` | Runs available test scripts in npm workspaces, including the main-area worker unit tests. |
40
+ | `npm run type-check` | Type-checks the TypeScript project references. |
41
+ | `npm run lint` | Runs ESLint, Prettier checks, and Knip. |
42
+ | `npm run measure` | Runs the worker's memory measurement suite. |
43
+
44
+ Build output includes `.tmp/dist/dist/mainAreaWorkerMain.js` and a generated package manifest. A build also uses the repository's `README.md` and `LICENSE` in that package output.
45
+
46
+ ## Browser tests
47
+
48
+ The browser suites live in `packages/e2e`. Build first so the local server can load the generated worker:
49
+
50
+ ```sh
51
+ npm run build
52
+ cd packages/e2e
53
+ npx playwright install chromium firefox webkit
54
+ npm run e2e:headless
55
+ npm run e2e:firefox:headless
56
+ npm run e2e:webkit:headless
57
+ ```
58
+
59
+ The repository also provides `npm run e2e`, `npm run e2e:firefox`, and `npm run e2e:webkit` for headed runs. In CI, the WebKit suite is excluded on Windows.
60
+
61
+ Application integration scenarios use a disposable Lvce Editor checkout. See the [`packages/e2e-integration` guide](packages/e2e-integration/README.md) for preparation and execution instructions.
62
+
63
+ ## CI and releases
64
+
65
+ Pull requests run build, static build, unit tests, type checking, lint, Chromium and Firefox browser suites, WebKit where supported, memory measurement, and Electron tab-move integration tests on Ubuntu, macOS, and Windows. Pushes to `main` run the build, test, browser, and measurement matrix and deploy the static test build to GitHub Pages.
66
+
67
+ Pushing a version tag matching `v*.*.*` starts the release workflow. It builds the publishable package, publishes it to npm, and publishes the GitHub release after a draft is created.
68
+
69
+ ## License
70
+
71
+ MIT
@@ -5085,6 +5085,9 @@ const getFileIcon = uri => {
5085
5085
  if (uri.startsWith('process-explorer://')) {
5086
5086
  return `MaskIconDebugAlt2`;
5087
5087
  }
5088
+ if (uri.startsWith('workers:///')) {
5089
+ return `MaskIconDebugAlt2`;
5090
+ }
5088
5091
  if (uri.startsWith('running-extensions://')) {
5089
5092
  return `MaskIconExtensions`;
5090
5093
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lvce-editor/main-area-worker",
3
- "version": "9.72.2",
3
+ "version": "9.73.1",
4
4
  "description": "Main Area Worker",
5
5
  "repository": {
6
6
  "type": "git",