@volter/project 0.5.212 → 0.5.214
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/package.json
CHANGED
|
@@ -93,17 +93,6 @@
|
|
|
93
93
|
"keymap": {
|
|
94
94
|
"description": "Active keymap preset id (`volter`, or a contributed preset).",
|
|
95
95
|
"type": "string"
|
|
96
|
-
},
|
|
97
|
-
"play": {
|
|
98
|
-
"description": "How the editor presents Play mode.",
|
|
99
|
-
"type": "object",
|
|
100
|
-
"properties": {
|
|
101
|
-
"keepPanelsVisible": {
|
|
102
|
-
"description": "Keep editor panels visible when starting Play, instead of letting an immersive workspace hide them. Turning this on during Play restores the panels; turning it off applies on the next Play.",
|
|
103
|
-
"type": "boolean"
|
|
104
|
-
}
|
|
105
|
-
},
|
|
106
|
-
"additionalProperties": false
|
|
107
96
|
}
|
|
108
97
|
},
|
|
109
98
|
"additionalProperties": false,
|
|
@@ -497,6 +497,9 @@ export interface DocumentEntry {
|
|
|
497
497
|
readonly source?: SceneSource;
|
|
498
498
|
/** Which finder produced it; absent = the adapter stated it outright. */
|
|
499
499
|
readonly finder?: string;
|
|
500
|
+
/** `true` = its editor opens it before its file is written, and its first save writes the file: what `editor.open`
|
|
501
|
+
* of its id opens when the file is not there yet. */
|
|
502
|
+
readonly opensUnwritten?: boolean;
|
|
500
503
|
}
|
|
501
504
|
|
|
502
505
|
const DocumentEntrySchema = z
|
|
@@ -509,6 +512,7 @@ const DocumentEntrySchema = z
|
|
|
509
512
|
reach: SceneReachSchema,
|
|
510
513
|
source: SceneSourceSchema.optional(),
|
|
511
514
|
finder: z.string().min(1).optional(),
|
|
515
|
+
opensUnwritten: z.boolean().optional(),
|
|
512
516
|
})
|
|
513
517
|
.strict();
|
|
514
518
|
|
|
@@ -159,12 +159,14 @@ export interface WorkspaceLayoutContribution {
|
|
|
159
159
|
* `'mounts'` (at least one root that plays) or a document kind the
|
|
160
160
|
* project's table lists. Omitted: every project. */
|
|
161
161
|
readonly requires?: 'mounts' | { readonly documentKind: string };
|
|
162
|
-
/** Chrome region overrides; omitted regions
|
|
162
|
+
/** Chrome region overrides; omitted regions take the person's own choice, then their defaults. */
|
|
163
163
|
readonly regions?: WorkspaceLayoutRegions;
|
|
164
164
|
/** The workspace's EDITOR AREAS beside the centre document — a second
|
|
165
165
|
* editor group holding a `workspace.document` contribution
|
|
166
166
|
* (`WorkspaceAreaContribution`). Absent: the centre document alone. */
|
|
167
167
|
readonly areas?: WorkspaceArrangement['areas'];
|
|
168
|
+
/** The document the workspace is for (`WorkspaceArrangement.document`). */
|
|
169
|
+
readonly document?: WorkspaceArrangement['document'];
|
|
168
170
|
}
|
|
169
171
|
|
|
170
172
|
/**
|
|
@@ -69,4 +69,8 @@ export interface WorkspaceArrangement {
|
|
|
69
69
|
/** The workspace's EDITOR AREAS beside the centre document — see
|
|
70
70
|
* {@link WorkspaceAreaContribution}. Absent: the centre document alone. */
|
|
71
71
|
readonly areas?: readonly WorkspaceAreaContribution[];
|
|
72
|
+
/** The document the workspace is FOR, shown in the centre as it becomes active: the id of a workspace document a
|
|
73
|
+
* package registers (`workspace:ui-components`, the UI board). Its package activates on `onDocument:<id>`, so the
|
|
74
|
+
* document opens once it is registered. Absent: the centre keeps the document the person has open. */
|
|
75
|
+
readonly document?: string;
|
|
72
76
|
}
|
package/src/manifest/locate.ts
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
// Finding the project manifest ON DISK. There is ONE filename (`./filename.ts`).
|
|
2
2
|
//
|
|
3
3
|
// Deliberately dependency-light — `node:fs` + `node:path` + `./filename` and
|
|
4
|
-
// NOTHING else (no Zod, no `./load`).
|
|
5
|
-
//
|
|
6
|
-
//
|
|
7
|
-
// manifest without dragging the validator in.
|
|
4
|
+
// NOTHING else (no Zod, no `./load`). Its callers (the editor's server, the
|
|
5
|
+
// live session and a product's CLI) locate a manifest without dragging the
|
|
6
|
+
// validator in.
|
|
8
7
|
|
|
9
8
|
import { existsSync } from 'node:fs';
|
|
10
9
|
import { join } from 'node:path';
|
package/src/settings/schema.ts
CHANGED
|
@@ -71,18 +71,6 @@ export const EditorSettingsSchema = z
|
|
|
71
71
|
.optional()
|
|
72
72
|
.describe('How the editor chrome looks.'),
|
|
73
73
|
keymap: z.string().optional().describe('Active keymap preset id (`volter`, or a contributed preset).'),
|
|
74
|
-
play: z
|
|
75
|
-
.object({
|
|
76
|
-
keepPanelsVisible: z
|
|
77
|
-
.boolean()
|
|
78
|
-
.optional()
|
|
79
|
-
.describe(
|
|
80
|
-
'Keep editor panels visible when starting Play, instead of letting an immersive workspace hide them. Turning this on during Play restores the panels; turning it off applies on the next Play.',
|
|
81
|
-
),
|
|
82
|
-
})
|
|
83
|
-
.strict()
|
|
84
|
-
.optional()
|
|
85
|
-
.describe('How the editor presents Play mode.'),
|
|
86
74
|
})
|
|
87
75
|
.strict()
|
|
88
76
|
.describe('Editor settings — the user layer and the project layer share this shape.');
|