@fungi.computer/nacre 0.0.0-stage → 0.0.2
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/LICENSE +21 -0
- package/README.md +98 -2
- package/dist/app-directory.d.ts +600 -0
- package/dist/app-directory.js +323 -0
- package/dist/browser-actions.d.ts +7 -0
- package/dist/browser-actions.js +56 -0
- package/dist/command-host.d.ts +140 -0
- package/dist/command-host.js +532 -0
- package/dist/commands.d.ts +25 -0
- package/dist/commands.js +78 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.js +9 -0
- package/dist/keys.d.ts +47 -0
- package/dist/keys.js +136 -0
- package/dist/shell-module.d.ts +98 -0
- package/dist/shell-module.js +90 -0
- package/dist/window-manager.d.ts +159 -0
- package/dist/window-manager.js +796 -0
- package/dist/workbench-contract.d.ts +70 -0
- package/dist/workbench-contract.js +1 -0
- package/dist/workbench-directory.d.ts +343 -0
- package/dist/workbench-directory.js +65 -0
- package/dist/workbench-host-types.d.ts +114 -0
- package/dist/workbench-host-types.js +1 -0
- package/dist/workbench-host.d.ts +34 -0
- package/dist/workbench-host.js +356 -0
- package/dist/workbench-model.d.ts +223 -0
- package/dist/workbench-model.js +93 -0
- package/dist/workbench.d.ts +4 -0
- package/dist/workbench.js +2 -0
- package/docs/api/README.md +21 -0
- package/docs/api/app-directory.md +587 -0
- package/docs/api/command-host.md +225 -0
- package/docs/api/commands.md +199 -0
- package/docs/api/index.md +1860 -0
- package/docs/api/keys.md +183 -0
- package/docs/api/shell-module.md +233 -0
- package/docs/api/window-manager.md +269 -0
- package/docs/api/workbench-directory.md +141 -0
- package/docs/api/workbench.md +201 -0
- package/package.json +98 -3
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
<!-- Generated by Botanical API docs (TypeDoc + typedoc-plugin-markdown). Do not edit. -->
|
|
2
|
+
|
|
3
|
+
[**@fungi.computer/nacre**](README.md)
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
[@fungi.computer/nacre](README.md) / workbench-directory
|
|
8
|
+
|
|
9
|
+
# workbench-directory
|
|
10
|
+
|
|
11
|
+
## Type Aliases
|
|
12
|
+
|
|
13
|
+
### WorkbenchDirectory
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
type WorkbenchDirectory = z.output<typeof workbenchDirectorySchema>;
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
One host's current desktop rows and actual role selections.
|
|
20
|
+
|
|
21
|
+
## Variables
|
|
22
|
+
|
|
23
|
+
### workbenchComputerDirectorySchema
|
|
24
|
+
|
|
25
|
+
```ts
|
|
26
|
+
const workbenchComputerDirectorySchema: ZodObject<
|
|
27
|
+
{
|
|
28
|
+
computers: ZodArray<
|
|
29
|
+
ZodObject<
|
|
30
|
+
{
|
|
31
|
+
computerId: ZodString;
|
|
32
|
+
name: ZodString;
|
|
33
|
+
},
|
|
34
|
+
$strip
|
|
35
|
+
>
|
|
36
|
+
>;
|
|
37
|
+
nextOffset: ZodNullable<ZodNumber>;
|
|
38
|
+
},
|
|
39
|
+
$strip
|
|
40
|
+
>;
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
The shell picker needs identities and labels, not inventory receipts.
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
### workbenchDirectorySchema
|
|
48
|
+
|
|
49
|
+
```ts
|
|
50
|
+
const workbenchDirectorySchema: ZodPipe<ZodObject<{
|
|
51
|
+
apps: ZodArray<ZodObject<{
|
|
52
|
+
address: ZodLazy<ZodUnion<readonly [ZodObject<{
|
|
53
|
+
kind: ...;
|
|
54
|
+
appId: ...;
|
|
55
|
+
}, $strict>, ZodObject<{
|
|
56
|
+
kind: ...;
|
|
57
|
+
installationId: ...;
|
|
58
|
+
}, $strict>]>>;
|
|
59
|
+
installationId: ZodNullable<ZodString>;
|
|
60
|
+
surfaceId: ZodString;
|
|
61
|
+
appId: ZodString;
|
|
62
|
+
displayName: ZodOptional<ZodString>;
|
|
63
|
+
icon: ZodOptional<ZodNullable<ZodString>>;
|
|
64
|
+
releaseId: ZodNullable<ZodString>;
|
|
65
|
+
authorityVersion: ZodNumber;
|
|
66
|
+
enforcement: ZodNullable<ZodLazy<ZodObject<{
|
|
67
|
+
requestId: ZodString;
|
|
68
|
+
address: ZodLazy<...>;
|
|
69
|
+
authorityVersion: ZodNumber;
|
|
70
|
+
state: ZodEnum<...>;
|
|
71
|
+
outstanding: ZodNumber;
|
|
72
|
+
}, $strict>>>;
|
|
73
|
+
handlers: ZodArray<ZodLiteral<"file.open">>;
|
|
74
|
+
roles: ZodArray<ZodString>;
|
|
75
|
+
declaredCapabilities: ZodArray<ZodString>;
|
|
76
|
+
calls: ZodOptional<ZodPipe<ZodUnknown, ZodTransform<readonly object[], unknown>>>;
|
|
77
|
+
commands: ZodPipe<ZodArray<ZodUnknown>, ZodTransform<Readonly<{
|
|
78
|
+
id: ...;
|
|
79
|
+
title: ...;
|
|
80
|
+
category: ...;
|
|
81
|
+
description?: ...;
|
|
82
|
+
sigil?: ...;
|
|
83
|
+
projections?: ...;
|
|
84
|
+
}>[], unknown[]>>;
|
|
85
|
+
gills: ZodPipe<ZodArray<ZodUnknown>, ZodTransform<AppDirectoryGill[], unknown[]>>;
|
|
86
|
+
availability: ZodEnum<{
|
|
87
|
+
available: "available";
|
|
88
|
+
unavailable: "unavailable";
|
|
89
|
+
}>;
|
|
90
|
+
surface: ZodNullable<ZodObject<{
|
|
91
|
+
stableRoute: ZodString;
|
|
92
|
+
}, $strict>>;
|
|
93
|
+
surfacePath: ZodString;
|
|
94
|
+
computer: ZodOptional<ZodUnion<readonly [ZodObject<{
|
|
95
|
+
computerId: ...;
|
|
96
|
+
name: ...;
|
|
97
|
+
}, $strip>, ZodLiteral<"owner-fleet">]>>;
|
|
98
|
+
computerPermission: ZodOptional<ZodNullable<ZodDiscriminatedUnion<[ZodLazy<...>, ZodLazy<...>], "kind">>>;
|
|
99
|
+
}, $strip>>;
|
|
100
|
+
computer: ZodOptional<ZodObject<{
|
|
101
|
+
computerId: ZodString;
|
|
102
|
+
name: ZodString;
|
|
103
|
+
}, $strip>>;
|
|
104
|
+
computerContext: ZodOptional<ZodLiteral<"owner-fleet">>;
|
|
105
|
+
roles: ZodRecord<ZodString, ZodObject<{
|
|
106
|
+
surfaceId: ZodNullable<ZodString>;
|
|
107
|
+
chosen: ZodBoolean;
|
|
108
|
+
}, $strict>>;
|
|
109
|
+
needsUpdate: ZodOptional<ZodArray<ZodObject<{
|
|
110
|
+
installationId: ZodNullable<ZodString>;
|
|
111
|
+
appId: ZodNullable<ZodString>;
|
|
112
|
+
displayName: ZodString;
|
|
113
|
+
}, $strict>>>;
|
|
114
|
+
}, $strip>, ZodTransform<{
|
|
115
|
+
apps: object[];
|
|
116
|
+
computer?: {
|
|
117
|
+
computerId: string;
|
|
118
|
+
name: string;
|
|
119
|
+
};
|
|
120
|
+
computerContext?: "owner-fleet";
|
|
121
|
+
roles: Record<string, {
|
|
122
|
+
surfaceId: string | null;
|
|
123
|
+
chosen: boolean;
|
|
124
|
+
}>;
|
|
125
|
+
needsUpdate?: object[];
|
|
126
|
+
}, {
|
|
127
|
+
apps: object[];
|
|
128
|
+
computer?: {
|
|
129
|
+
computerId: string;
|
|
130
|
+
name: string;
|
|
131
|
+
};
|
|
132
|
+
computerContext?: "owner-fleet";
|
|
133
|
+
roles: Record<string, {
|
|
134
|
+
surfaceId: string | null;
|
|
135
|
+
chosen: boolean;
|
|
136
|
+
}>;
|
|
137
|
+
needsUpdate?: object[];
|
|
138
|
+
}>>;
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
Desktop metadata shared by hosts; hosted administration stays in Settings.
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
<!-- Generated by Botanical API docs (TypeDoc + typedoc-plugin-markdown). Do not edit. -->
|
|
2
|
+
|
|
3
|
+
[**@fungi.computer/nacre**](README.md)
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
[@fungi.computer/nacre](README.md) / workbench
|
|
8
|
+
|
|
9
|
+
# workbench
|
|
10
|
+
|
|
11
|
+
## References
|
|
12
|
+
|
|
13
|
+
### WorkbenchResolvedChild
|
|
14
|
+
|
|
15
|
+
Re-exports [WorkbenchResolvedChild](index.md#workbenchresolvedchild)
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
### WorkbenchChildSurface
|
|
20
|
+
|
|
21
|
+
Re-exports [WorkbenchChildSurface](index.md#workbenchchildsurface)
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
### WorkbenchChildMountOptions
|
|
26
|
+
|
|
27
|
+
Re-exports [WorkbenchChildMountOptions](index.md#workbenchchildmountoptions)
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
### WorkbenchPreparedChild
|
|
32
|
+
|
|
33
|
+
Re-exports [WorkbenchPreparedChild](index.md#workbenchpreparedchild)
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
### WorkbenchHostServices
|
|
38
|
+
|
|
39
|
+
Re-exports [WorkbenchHostServices](index.md#workbenchhostservices)
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
### WorkbenchHostControls
|
|
44
|
+
|
|
45
|
+
Re-exports [WorkbenchHostControls](index.md#workbenchhostcontrols)
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
### WorkbenchWarningEvent
|
|
50
|
+
|
|
51
|
+
Re-exports [WorkbenchWarningEvent](index.md#workbenchwarningevent)
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
### WorkbenchWarningFields
|
|
56
|
+
|
|
57
|
+
Re-exports [WorkbenchWarningFields](index.md#workbenchwarningfields)
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
### WorkbenchHostOptions
|
|
62
|
+
|
|
63
|
+
Re-exports [WorkbenchHostOptions](index.md#workbenchhostoptions)
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
### WorkbenchChildLaunch
|
|
68
|
+
|
|
69
|
+
Re-exports [WorkbenchChildLaunch](index.md#workbenchchildlaunch)
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
### WorkbenchCommandInvocation
|
|
74
|
+
|
|
75
|
+
Re-exports [WorkbenchCommandInvocation](index.md#workbenchcommandinvocation)
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
### WorkbenchChildEvents
|
|
80
|
+
|
|
81
|
+
Re-exports [WorkbenchChildEvents](index.md#workbenchchildevents)
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
### WorkbenchChildHandle
|
|
86
|
+
|
|
87
|
+
Re-exports [WorkbenchChildHandle](index.md#workbenchchildhandle)
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
### WorkbenchPlatformDestination
|
|
92
|
+
|
|
93
|
+
Re-exports [WorkbenchPlatformDestination](index.md#workbenchplatformdestination)
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
### workbenchGillRequestSchema
|
|
98
|
+
|
|
99
|
+
Re-exports [workbenchGillRequestSchema](index.md#workbenchgillrequestschema)
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
### WorkbenchGillRequest
|
|
104
|
+
|
|
105
|
+
Re-exports [WorkbenchGillRequest](index.md#workbenchgillrequest)
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
### desktopGillSelectionSchema
|
|
110
|
+
|
|
111
|
+
Re-exports [desktopGillSelectionSchema](index.md#desktopgillselectionschema)
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
### DesktopGillSelection
|
|
116
|
+
|
|
117
|
+
Re-exports [DesktopGillSelection](index.md#desktopgillselection)
|
|
118
|
+
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
### desktopGillSizesSchema
|
|
122
|
+
|
|
123
|
+
Re-exports [desktopGillSizesSchema](index.md#desktopgillsizesschema)
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
### desktopGillAdditionSchema
|
|
128
|
+
|
|
129
|
+
Re-exports [desktopGillAdditionSchema](index.md#desktopgilladditionschema)
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
### DesktopGillAddition
|
|
134
|
+
|
|
135
|
+
Re-exports [DesktopGillAddition](index.md#desktopgilladdition)
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
### WorkbenchDesktopSettings
|
|
140
|
+
|
|
141
|
+
Re-exports [WorkbenchDesktopSettings](index.md#workbenchdesktopsettings)
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
### desktopSettingsHandlerSchema
|
|
146
|
+
|
|
147
|
+
Re-exports [desktopSettingsHandlerSchema](index.md#desktopsettingshandlerschema)
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
### WorkbenchDesktopRegistration
|
|
152
|
+
|
|
153
|
+
Re-exports [WorkbenchDesktopRegistration](index.md#workbenchdesktopregistration)
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
### WorkbenchGillWatch
|
|
158
|
+
|
|
159
|
+
Re-exports [WorkbenchGillWatch](index.md#workbenchgillwatch)
|
|
160
|
+
|
|
161
|
+
---
|
|
162
|
+
|
|
163
|
+
### appOpenRequestSchema
|
|
164
|
+
|
|
165
|
+
Re-exports [appOpenRequestSchema](index.md#appopenrequestschema)
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
|
|
169
|
+
### teamComputerSchema
|
|
170
|
+
|
|
171
|
+
Re-exports [teamComputerSchema](index.md#teamcomputerschema)
|
|
172
|
+
|
|
173
|
+
---
|
|
174
|
+
|
|
175
|
+
### TeamComputer
|
|
176
|
+
|
|
177
|
+
Re-exports [TeamComputer](index.md#teamcomputer)
|
|
178
|
+
|
|
179
|
+
---
|
|
180
|
+
|
|
181
|
+
### teamComputerDirectorySchema
|
|
182
|
+
|
|
183
|
+
Re-exports [teamComputerDirectorySchema](index.md#teamcomputerdirectoryschema)
|
|
184
|
+
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
### TeamWorkbenchHostHandle
|
|
188
|
+
|
|
189
|
+
Re-exports [TeamWorkbenchHostHandle](index.md#teamworkbenchhosthandle)
|
|
190
|
+
|
|
191
|
+
---
|
|
192
|
+
|
|
193
|
+
### TeamWorkbenchChildEvents
|
|
194
|
+
|
|
195
|
+
Re-exports [TeamWorkbenchChildEvents](index.md#teamworkbenchchildevents)
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
199
|
+
### WorkbenchHost
|
|
200
|
+
|
|
201
|
+
Re-exports [WorkbenchHost](index.md#workbenchhost)
|
package/package.json
CHANGED
|
@@ -1,6 +1,101 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fungi.computer/nacre",
|
|
3
|
-
"version": "0.0.
|
|
4
|
-
"
|
|
5
|
-
"description": "
|
|
3
|
+
"version": "0.0.2",
|
|
4
|
+
"author": "Levi <levi@technomancy.dev>",
|
|
5
|
+
"description": "The shell client for hosting Apps: workbench, command host, keys, commands, window manager and App directory rows",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"sideEffects": false,
|
|
8
|
+
"main": "./dist/index.js",
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
10
|
+
"exports": {
|
|
11
|
+
".": {
|
|
12
|
+
"types": "./dist/index.d.ts",
|
|
13
|
+
"import": "./dist/index.js"
|
|
14
|
+
},
|
|
15
|
+
"./workbench": {
|
|
16
|
+
"types": "./dist/workbench.d.ts",
|
|
17
|
+
"import": "./dist/workbench.js"
|
|
18
|
+
},
|
|
19
|
+
"./shell-module": {
|
|
20
|
+
"types": "./dist/shell-module.d.ts",
|
|
21
|
+
"import": "./dist/shell-module.js"
|
|
22
|
+
},
|
|
23
|
+
"./command-host": {
|
|
24
|
+
"types": "./dist/command-host.d.ts",
|
|
25
|
+
"import": "./dist/command-host.js"
|
|
26
|
+
},
|
|
27
|
+
"./keys": {
|
|
28
|
+
"types": "./dist/keys.d.ts",
|
|
29
|
+
"import": "./dist/keys.js"
|
|
30
|
+
},
|
|
31
|
+
"./commands": {
|
|
32
|
+
"types": "./dist/commands.d.ts",
|
|
33
|
+
"import": "./dist/commands.js"
|
|
34
|
+
},
|
|
35
|
+
"./window-manager": {
|
|
36
|
+
"types": "./dist/window-manager.d.ts",
|
|
37
|
+
"import": "./dist/window-manager.js"
|
|
38
|
+
},
|
|
39
|
+
"./app-directory": {
|
|
40
|
+
"types": "./dist/app-directory.d.ts",
|
|
41
|
+
"import": "./dist/app-directory.js"
|
|
42
|
+
},
|
|
43
|
+
"./workbench-directory": {
|
|
44
|
+
"types": "./dist/workbench-directory.d.ts",
|
|
45
|
+
"import": "./dist/workbench-directory.js"
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
"files": [
|
|
49
|
+
"dist",
|
|
50
|
+
"docs/api",
|
|
51
|
+
"README.md",
|
|
52
|
+
"LICENSE"
|
|
53
|
+
],
|
|
54
|
+
"dependencies": {
|
|
55
|
+
"@fungi.computer/agar": "0.3.1",
|
|
56
|
+
"@fungi.computer/ear-tag": "0.1.0",
|
|
57
|
+
"@fungi.computer/gills": "0.2.0",
|
|
58
|
+
"@fungi.computer/puffball": "0.2.0",
|
|
59
|
+
"@fungi.computer/whistle": "0.1.0",
|
|
60
|
+
"effect": "4.0.2",
|
|
61
|
+
"zod": "4.4.3"
|
|
62
|
+
},
|
|
63
|
+
"devDependencies": {
|
|
64
|
+
"@types/node": "24.13.3",
|
|
65
|
+
"typescript": "5.9.3",
|
|
66
|
+
"vitest": "4.1.11"
|
|
67
|
+
},
|
|
68
|
+
"botanical": {
|
|
69
|
+
"role": "package",
|
|
70
|
+
"operations": {
|
|
71
|
+
"lint": "required",
|
|
72
|
+
"typecheck": "required",
|
|
73
|
+
"build": "required",
|
|
74
|
+
"test": "required",
|
|
75
|
+
"docs": "required",
|
|
76
|
+
"pack": "required",
|
|
77
|
+
"smoke": "required",
|
|
78
|
+
"stranger": "required"
|
|
79
|
+
}
|
|
80
|
+
},
|
|
81
|
+
"license": "MIT",
|
|
82
|
+
"repository": {
|
|
83
|
+
"type": "git",
|
|
84
|
+
"url": "git+https://github.com/fungi-computer/nacre.git"
|
|
85
|
+
},
|
|
86
|
+
"scripts": {
|
|
87
|
+
"lint": "eslint src test --max-warnings=0 && ../../node_modules/.bin/oxlint --config ../../oxlint.config.ts --deny-warnings src test",
|
|
88
|
+
"typecheck": "tsc -p tsconfig.json --noEmit && tsc -p test/tsconfig.json --noEmit",
|
|
89
|
+
"build": "pnpm run clean && tsc -p tsconfig.build.json",
|
|
90
|
+
"clean": "node --input-type=module --eval \"import { rm } from 'node:fs/promises'; await rm('dist', { recursive: true, force: true });\"",
|
|
91
|
+
"test": "vitest run",
|
|
92
|
+
"test:unit": "pnpm run test",
|
|
93
|
+
"docs": "tsx ../../tooling/repository/src/docs/cli.ts check --root ../..",
|
|
94
|
+
"docs:write": "tsx ../../tooling/repository/src/docs/cli.ts write --root ../..",
|
|
95
|
+
"pack": "mkdir -p ../../.botanical/nacre-pack && pnpm pack --pack-destination ../../.botanical/nacre-pack",
|
|
96
|
+
"smoke": "node test/stranger/runtime.mjs",
|
|
97
|
+
"stranger": "tsx ../../tooling/repository/src/artifacts/cli.ts --repo-root ../.. .",
|
|
98
|
+
"format:check": "node ../../tooling/repository/scripts/format-package-check.mjs",
|
|
99
|
+
"lint:anti-slop": "node ../../tooling/repository/scripts/lint-package-anti-slop.mjs"
|
|
100
|
+
}
|
|
6
101
|
}
|