@dotcraft/plugin 0.5.9 → 0.6.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 +46 -1
- package/dist/contracts.d.ts +186 -24
- package/dist/contracts.d.ts.map +1 -1
- package/dist/index.d.ts +5 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/ui.d.ts +41 -0
- package/dist/ui.d.ts.map +1 -1
- package/package.json +4 -4
- package/scripts/build-plugin.mjs +45 -9
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @dotcraft/plugin
|
|
2
2
|
|
|
3
|
-
`@dotcraft/plugin` provides the public contracts, shared React runtime bindings, and build command for DotCraft Desktop Plugins.
|
|
3
|
+
`@dotcraft/plugin` provides the public contracts, shared React runtime bindings, and build command for trusted DotCraft Desktop Plugins. Use Node.js 20 or later.
|
|
4
4
|
|
|
5
5
|
## Install
|
|
6
6
|
|
|
@@ -8,6 +8,49 @@
|
|
|
8
8
|
npm install --save-dev @dotcraft/plugin
|
|
9
9
|
```
|
|
10
10
|
|
|
11
|
+
React 19 and `react-dom` 19 are peer dependencies. The `$plugin-creator` scaffold supplies them and the required TypeScript setup.
|
|
12
|
+
|
|
13
|
+
## Activate
|
|
14
|
+
|
|
15
|
+
```tsx
|
|
16
|
+
import type { DesktopPluginActivate } from "@dotcraft/plugin";
|
|
17
|
+
|
|
18
|
+
export const activate: DesktopPluginActivate = (host) => {
|
|
19
|
+
host.ui.add("composer.toolbar.leading", ({ context }) => (
|
|
20
|
+
context.minimalChrome ? null : <button type="button">Review</button>
|
|
21
|
+
));
|
|
22
|
+
};
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Match Desktop settings and appearance
|
|
26
|
+
|
|
27
|
+
Build settings pages from the exported Host UI Kit, including `SettingsGroup`, `SettingsRow`,
|
|
28
|
+
`SegmentedControl`, and `Slider`. Put plugin-specific visual pickers in a block row or a
|
|
29
|
+
`SettingsGroup` with `flush` rather than reproducing Desktop layout styles.
|
|
30
|
+
|
|
31
|
+
Use `host.appearance` for application-wide theme or backdrop effects. Theme contributions provide
|
|
32
|
+
partial light and dark seed overrides; wallpaper-style plugins render media in `app.background`
|
|
33
|
+
and set the shell surface opacity with `setBackdropPresentation`. Passing `null`, deactivating, or
|
|
34
|
+
reloading the plugin restores the previous Host appearance. Private Desktop CSS variables are not
|
|
35
|
+
part of this API.
|
|
36
|
+
|
|
37
|
+
Use `app.status` for compact persistent diagnostics that share the Host-owned bottom-right status
|
|
38
|
+
rail with Core indicators. Use `app.overlay` for decorative or independently positioned content;
|
|
39
|
+
an `app.status` contribution does not position itself against the viewport.
|
|
40
|
+
|
|
41
|
+
Request an opaque RGB color with `host.ui.pickColor`. Desktop owns the dialog, Hex validation,
|
|
42
|
+
focus handling, and localized controls. The result distinguishes a selected color, a semantic
|
|
43
|
+
reset, and cancellation; plugin disable or reload cancels any request it owns.
|
|
44
|
+
|
|
45
|
+
```ts
|
|
46
|
+
const result = await host.ui.pickColor({
|
|
47
|
+
title: "Choose workspace color",
|
|
48
|
+
initialColor: "#8b5cf6",
|
|
49
|
+
allowReset: true,
|
|
50
|
+
defaultColor: "#4566cc",
|
|
51
|
+
});
|
|
52
|
+
```
|
|
53
|
+
|
|
11
54
|
## Build
|
|
12
55
|
|
|
13
56
|
The `$plugin-creator` scaffold supplies the source layout and build script. From its `desktop/` directory, run:
|
|
@@ -20,6 +63,8 @@ The build writes the plugin module and imported assets to `dist/` for DotCraft t
|
|
|
20
63
|
|
|
21
64
|
## Links
|
|
22
65
|
|
|
66
|
+
- [Build a Desktop Plugin](https://dotharness.github.io/dotcraft/developing/integrations/desktop-plugins)
|
|
67
|
+
- [Desktop Plugin API](https://dotharness.github.io/dotcraft/developing/integrations/desktop-plugin-api)
|
|
23
68
|
- [Source repository](https://github.com/DotHarness/dotcraft)
|
|
24
69
|
- [Issues](https://github.com/DotHarness/dotcraft/issues)
|
|
25
70
|
- [License](./LICENSE)
|
package/dist/contracts.d.ts
CHANGED
|
@@ -1,19 +1,132 @@
|
|
|
1
1
|
import type { AppConnectionStartResult, AppConnectionStatusResult, ClientRequestMethods, ServerNotificationMethods } from "@dotcraft/sdk/contracts";
|
|
2
|
-
import type { ComponentType, CSSProperties, ExoticComponent } from "react";
|
|
2
|
+
import type { ComponentType, CSSProperties, ExoticComponent, ReactNode } from "react";
|
|
3
3
|
export type DesktopPluginDispose = () => void;
|
|
4
4
|
export interface DesktopPluginMetadata {
|
|
5
5
|
readonly id: string;
|
|
6
6
|
readonly version: string;
|
|
7
7
|
readonly displayName: string;
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
/** The app locales Desktop resolves to. A browser tag such as `zh-CN` normalizes into this set. */
|
|
10
|
+
export type DesktopPluginLocale = "en" | "zh-Hans" | "ja" | "ko" | "es" | "fr" | "de";
|
|
11
|
+
/** The four values Desktop derives its palette from; see the theme token contract. */
|
|
12
|
+
export interface DesktopPluginThemeSeed {
|
|
13
|
+
/** The base plane: the page in dark, the card in light. */
|
|
14
|
+
readonly surface: string;
|
|
15
|
+
readonly ink: string;
|
|
16
|
+
readonly accent: string;
|
|
17
|
+
/** 0-100. */
|
|
18
|
+
readonly contrast: number;
|
|
19
|
+
}
|
|
20
|
+
export interface DesktopPluginEnvironmentSnapshot {
|
|
21
|
+
readonly locale: DesktopPluginLocale;
|
|
11
22
|
readonly theme: "light" | "dark";
|
|
23
|
+
readonly themeSeed: DesktopPluginThemeSeed;
|
|
24
|
+
}
|
|
25
|
+
export interface DesktopPluginEnvironment extends DesktopPluginEnvironmentSnapshot {
|
|
26
|
+
/** Notifies when the applied theme, seed, or locale changes; disposed with the plugin generation. */
|
|
27
|
+
onChange(listener: (environment: DesktopPluginEnvironmentSnapshot) => void): DesktopPluginDispose;
|
|
28
|
+
}
|
|
29
|
+
export type DesktopPluginThemeSeedOverrides = Partial<Record<"light" | "dark", Partial<DesktopPluginThemeSeed>>>;
|
|
30
|
+
export interface DesktopPluginBackdropPresentation {
|
|
31
|
+
/** Opacity of each Host-owned shell surface, from 0 (clear) to 1 (opaque). */
|
|
32
|
+
readonly surfaceOpacity: number;
|
|
33
|
+
}
|
|
34
|
+
export interface DesktopPluginAppearance {
|
|
35
|
+
/** Replaces this plugin generation's theme layer. Pass null to reveal the layer below it. */
|
|
36
|
+
setThemeSeedOverride(value: DesktopPluginThemeSeedOverrides | null): void;
|
|
37
|
+
/** Replaces this plugin generation's backdrop presentation. Pass null when no media is active. */
|
|
38
|
+
setBackdropPresentation(value: DesktopPluginBackdropPresentation | null): void;
|
|
39
|
+
}
|
|
40
|
+
export interface DesktopPluginSessionSnapshot {
|
|
41
|
+
/** The foreground workspace, not the active thread's; a Composer surface context reports that one. */
|
|
42
|
+
readonly workspacePath: string | null;
|
|
43
|
+
readonly threadId: string | null;
|
|
44
|
+
readonly mode: "agent" | "plan";
|
|
45
|
+
readonly busy: boolean;
|
|
46
|
+
}
|
|
47
|
+
export interface DesktopPluginSession extends DesktopPluginSessionSnapshot {
|
|
48
|
+
/** Notifies when workspace, thread, mode, or busy state changes; disposed with the plugin generation. */
|
|
49
|
+
onChange(listener: (session: DesktopPluginSessionSnapshot) => void): DesktopPluginDispose;
|
|
50
|
+
}
|
|
51
|
+
export interface DesktopPluginAppSurfaceContext {
|
|
52
|
+
readonly rootElement: HTMLElement;
|
|
53
|
+
}
|
|
54
|
+
export interface DesktopPluginComposerSurfaceContext {
|
|
55
|
+
readonly workspacePath: string | null;
|
|
56
|
+
readonly threadId: string | null;
|
|
57
|
+
readonly mode: "agent" | "plan";
|
|
58
|
+
readonly busy: boolean;
|
|
59
|
+
readonly awaitingApproval: boolean;
|
|
60
|
+
readonly variant: "default" | "agentBuilder";
|
|
61
|
+
readonly minimalChrome: boolean;
|
|
62
|
+
}
|
|
63
|
+
export type DesktopPluginMascotActivity = "idle" | "focused" | "dragging" | "working" | "decision" | "success" | "error" | "sleeping";
|
|
64
|
+
export interface DesktopPluginComposerMascotSurfaceContext extends DesktopPluginComposerSurfaceContext {
|
|
65
|
+
readonly size: number;
|
|
66
|
+
readonly activity: DesktopPluginMascotActivity;
|
|
67
|
+
readonly expression: "neutral" | "happy" | "operator" | "sleep";
|
|
68
|
+
readonly light: "default" | "success" | "error";
|
|
69
|
+
readonly submitRevision: number;
|
|
70
|
+
readonly reasoningEffort: "off" | "low" | "medium" | "high" | "extraHigh";
|
|
71
|
+
readonly speed: "standard" | "fast";
|
|
72
|
+
readonly contextMax: boolean;
|
|
73
|
+
readonly reducedMotion: boolean;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Known Desktop surface contexts. Plugins may augment this interface with their own surfaces.
|
|
77
|
+
*/
|
|
78
|
+
export interface DesktopPluginSurfaceContextMap {
|
|
79
|
+
readonly app: DesktopPluginAppSurfaceContext;
|
|
80
|
+
readonly "app.background": DesktopPluginAppSurfaceContext;
|
|
81
|
+
readonly "app.overlay": DesktopPluginAppSurfaceContext;
|
|
82
|
+
readonly "app.status": DesktopPluginAppSurfaceContext;
|
|
83
|
+
readonly composer: DesktopPluginComposerSurfaceContext;
|
|
84
|
+
readonly "composer.mascot": DesktopPluginComposerMascotSurfaceContext;
|
|
85
|
+
readonly "composer.before": DesktopPluginComposerSurfaceContext;
|
|
86
|
+
readonly "composer.after": DesktopPluginComposerSurfaceContext;
|
|
87
|
+
readonly "composer.input": DesktopPluginComposerSurfaceContext;
|
|
88
|
+
readonly "composer.input.attachments": DesktopPluginComposerSurfaceContext;
|
|
89
|
+
readonly "composer.input.editor": DesktopPluginComposerSurfaceContext;
|
|
90
|
+
readonly "composer.toolbar": DesktopPluginComposerSurfaceContext;
|
|
91
|
+
readonly "composer.toolbar.leading": DesktopPluginComposerSurfaceContext;
|
|
92
|
+
readonly "composer.toolbar.trailing": DesktopPluginComposerSurfaceContext;
|
|
93
|
+
readonly "composer.toolbar.commands": DesktopPluginComposerSurfaceContext;
|
|
94
|
+
readonly "composer.toolbar.permissions": DesktopPluginComposerSurfaceContext;
|
|
95
|
+
readonly "composer.toolbar.mode": DesktopPluginComposerSurfaceContext;
|
|
96
|
+
readonly "composer.toolbar.goal": DesktopPluginComposerSurfaceContext;
|
|
97
|
+
readonly "composer.toolbar.context-usage": DesktopPluginComposerSurfaceContext;
|
|
98
|
+
readonly "composer.toolbar.model": DesktopPluginComposerSurfaceContext;
|
|
99
|
+
readonly "composer.toolbar.voice": DesktopPluginComposerSurfaceContext;
|
|
100
|
+
readonly "composer.toolbar.submit": DesktopPluginComposerSurfaceContext;
|
|
101
|
+
readonly "composer.status": DesktopPluginComposerSurfaceContext;
|
|
102
|
+
readonly "composer.status.workspace": DesktopPluginComposerSurfaceContext;
|
|
103
|
+
readonly "composer.status.subscription": DesktopPluginComposerSurfaceContext;
|
|
104
|
+
}
|
|
105
|
+
export type DesktopPluginSurfaceContext<Surface extends string> = Surface extends keyof DesktopPluginSurfaceContextMap ? DesktopPluginSurfaceContextMap[Surface] : unknown;
|
|
106
|
+
export interface DesktopPluginSurfaceProps<Surface extends string = string> {
|
|
107
|
+
readonly host: DesktopPluginHost;
|
|
108
|
+
readonly context: DesktopPluginSurfaceContext<Surface>;
|
|
109
|
+
}
|
|
110
|
+
export interface DesktopPluginSurfaceWrapperProps<Surface extends string = string> extends DesktopPluginSurfaceProps<Surface> {
|
|
111
|
+
readonly children: ReactNode;
|
|
112
|
+
}
|
|
113
|
+
export type DesktopPluginSurfaceComponent<Surface extends string = string> = ComponentType<DesktopPluginSurfaceProps<Surface>>;
|
|
114
|
+
export type DesktopPluginSurfaceWrapper<Surface extends string = string> = ComponentType<DesktopPluginSurfaceWrapperProps<Surface>>;
|
|
115
|
+
export type DesktopPluginEffectSetup = () => void | DesktopPluginDispose;
|
|
116
|
+
export interface DesktopPluginServices {
|
|
117
|
+
provide<T>(id: string, service: T): DesktopPluginDispose;
|
|
118
|
+
use<T>(id: string): T | undefined;
|
|
119
|
+
}
|
|
120
|
+
export interface DesktopPluginEvents {
|
|
121
|
+
on<T = unknown>(event: string, listener: (payload: T) => void): DesktopPluginDispose;
|
|
122
|
+
emit<T = unknown>(event: string, payload: T): void;
|
|
12
123
|
}
|
|
13
124
|
export interface DesktopPluginNavigation {
|
|
14
125
|
openMainView(contributionId: string): void;
|
|
15
126
|
openSettingsPage(contributionId: string): void;
|
|
16
127
|
openThread(threadId: string, workspacePath?: string): Promise<void>;
|
|
128
|
+
/** Opens an http(s) URL in the user's default browser. */
|
|
129
|
+
openExternal(url: string): Promise<void>;
|
|
17
130
|
onOpenUrl(listener: (url: string) => boolean): DesktopPluginDispose;
|
|
18
131
|
}
|
|
19
132
|
export interface DesktopPluginToastOptions {
|
|
@@ -25,9 +138,37 @@ export interface DesktopPluginToastOptions {
|
|
|
25
138
|
readonly run: () => void;
|
|
26
139
|
};
|
|
27
140
|
}
|
|
141
|
+
export interface DesktopPluginAddOptions {
|
|
142
|
+
/** Ascending; defaults to 100. Additions sharing an order keep registration order. */
|
|
143
|
+
readonly order?: number;
|
|
144
|
+
}
|
|
145
|
+
export interface DesktopPluginColorPickerBaseOptions {
|
|
146
|
+
readonly title: string;
|
|
147
|
+
readonly description?: string;
|
|
148
|
+
readonly initialColor: string;
|
|
149
|
+
}
|
|
150
|
+
export type DesktopPluginColorPickerOptions = (DesktopPluginColorPickerBaseOptions & {
|
|
151
|
+
readonly allowReset: true;
|
|
152
|
+
readonly defaultColor: string;
|
|
153
|
+
}) | (DesktopPluginColorPickerBaseOptions & {
|
|
154
|
+
readonly allowReset?: false;
|
|
155
|
+
readonly defaultColor?: never;
|
|
156
|
+
});
|
|
157
|
+
export type DesktopPluginColorPickerResult = {
|
|
158
|
+
readonly kind: "select";
|
|
159
|
+
readonly color: string;
|
|
160
|
+
} | {
|
|
161
|
+
readonly kind: "reset";
|
|
162
|
+
} | {
|
|
163
|
+
readonly kind: "cancel";
|
|
164
|
+
};
|
|
28
165
|
export interface DesktopPluginUi {
|
|
29
166
|
showToast(options: DesktopPluginToastOptions): DesktopPluginDispose;
|
|
30
167
|
confirm(options: DesktopPluginConfirmOptions): Promise<boolean>;
|
|
168
|
+
pickColor(options: DesktopPluginColorPickerOptions): Promise<DesktopPluginColorPickerResult>;
|
|
169
|
+
add<Surface extends string>(surface: Surface, component: DesktopPluginSurfaceComponent<Surface>, options?: DesktopPluginAddOptions): DesktopPluginDispose;
|
|
170
|
+
replace<Surface extends string>(surface: Surface, component: DesktopPluginSurfaceComponent<Surface>): DesktopPluginDispose;
|
|
171
|
+
wrap<Surface extends string>(surface: Surface, wrapper: DesktopPluginSurfaceWrapper<Surface>): DesktopPluginDispose;
|
|
31
172
|
}
|
|
32
173
|
export interface DesktopPluginConfirmOptions {
|
|
33
174
|
readonly title: string;
|
|
@@ -40,6 +181,40 @@ export interface DesktopPluginAppServer {
|
|
|
40
181
|
request<M extends keyof ClientRequestMethods>(method: M, params: ClientRequestMethods[M]["params"], timeoutMs?: number): Promise<ClientRequestMethods[M]["result"]>;
|
|
41
182
|
onNotification<M extends keyof ServerNotificationMethods>(method: M, listener: (params: ServerNotificationMethods[M]["params"]) => void): DesktopPluginDispose;
|
|
42
183
|
}
|
|
184
|
+
export type DesktopPluginSettingType = "text" | "textarea" | "number" | "bool" | "select" | "stringList" | "keyValueMap" | "json";
|
|
185
|
+
export interface DesktopPluginSettingField {
|
|
186
|
+
readonly key: string;
|
|
187
|
+
readonly type: DesktopPluginSettingType;
|
|
188
|
+
readonly defaultValue?: unknown;
|
|
189
|
+
readonly options?: readonly string[];
|
|
190
|
+
readonly min?: number;
|
|
191
|
+
readonly max?: number;
|
|
192
|
+
}
|
|
193
|
+
export interface DesktopPluginSettingsSchema {
|
|
194
|
+
readonly fields: readonly DesktopPluginSettingField[];
|
|
195
|
+
}
|
|
196
|
+
export type DesktopPluginSettingsScope = "personal" | "workspace";
|
|
197
|
+
export type DesktopPluginSettingsMutation = Readonly<{
|
|
198
|
+
op: "set";
|
|
199
|
+
key: string;
|
|
200
|
+
value: unknown;
|
|
201
|
+
}> | Readonly<{
|
|
202
|
+
op: "unset";
|
|
203
|
+
key: string;
|
|
204
|
+
}>;
|
|
205
|
+
export interface DesktopPluginSettingsSnapshot<TValue = Record<string, unknown>> {
|
|
206
|
+
readonly schema: DesktopPluginSettingsSchema;
|
|
207
|
+
readonly personal: Partial<TValue>;
|
|
208
|
+
readonly workspace: Partial<TValue>;
|
|
209
|
+
readonly value: TValue;
|
|
210
|
+
readonly writableScopes: readonly DesktopPluginSettingsScope[];
|
|
211
|
+
}
|
|
212
|
+
export interface DesktopPluginSettings {
|
|
213
|
+
get<TValue = Record<string, unknown>>(): Promise<DesktopPluginSettingsSnapshot<TValue>>;
|
|
214
|
+
mutate<TValue = Record<string, unknown>>(scope: DesktopPluginSettingsScope, operations: readonly DesktopPluginSettingsMutation[]): Promise<DesktopPluginSettingsSnapshot<TValue>>;
|
|
215
|
+
/** Notifies on new stored snapshots; skips repeats and stale reads, and never fires on subscribe. */
|
|
216
|
+
onChange<TValue = Record<string, unknown>>(listener: (settings: DesktopPluginSettingsSnapshot<TValue>) => void): DesktopPluginDispose;
|
|
217
|
+
}
|
|
43
218
|
export interface DesktopPluginAppBindings {
|
|
44
219
|
getConnectionStatus(appId: string): Promise<AppConnectionStatusResult>;
|
|
45
220
|
startConnection(appId: string): Promise<AppConnectionStartResult>;
|
|
@@ -112,9 +287,15 @@ export interface DesktopPluginOratorio {
|
|
|
112
287
|
export interface DesktopPluginHost {
|
|
113
288
|
readonly plugin: DesktopPluginMetadata;
|
|
114
289
|
readonly environment: DesktopPluginEnvironment;
|
|
290
|
+
readonly appearance: DesktopPluginAppearance;
|
|
291
|
+
readonly session: DesktopPluginSession;
|
|
292
|
+
effect(setup: DesktopPluginEffectSetup): DesktopPluginDispose;
|
|
293
|
+
readonly services: DesktopPluginServices;
|
|
294
|
+
readonly events: DesktopPluginEvents;
|
|
115
295
|
readonly navigation: DesktopPluginNavigation;
|
|
116
296
|
readonly ui: DesktopPluginUi;
|
|
117
297
|
readonly appServer: DesktopPluginAppServer;
|
|
298
|
+
readonly settings: DesktopPluginSettings;
|
|
118
299
|
readonly appBindings: DesktopPluginAppBindings;
|
|
119
300
|
readonly appSurfaces: DesktopPluginAppSurfaces;
|
|
120
301
|
readonly workspaces: DesktopPluginWorkspaceReader;
|
|
@@ -131,7 +312,7 @@ export interface DesktopPluginIconProps {
|
|
|
131
312
|
readonly style?: CSSProperties;
|
|
132
313
|
}
|
|
133
314
|
export type DesktopPluginIconComponent = ComponentType<DesktopPluginIconProps> | ExoticComponent<DesktopPluginIconProps>;
|
|
134
|
-
export type DesktopPluginContributionIcon =
|
|
315
|
+
export type DesktopPluginContributionIcon = DesktopPluginIconComponent;
|
|
135
316
|
export interface DesktopPluginViewProps {
|
|
136
317
|
readonly host: DesktopPluginHost;
|
|
137
318
|
readonly contributionId: string;
|
|
@@ -144,16 +325,6 @@ export interface DesktopPluginCommandContext {
|
|
|
144
325
|
readonly threadId: string | null;
|
|
145
326
|
readonly viewId: string;
|
|
146
327
|
}
|
|
147
|
-
export interface DesktopPluginComposerActionContext {
|
|
148
|
-
readonly workspacePath: string | null;
|
|
149
|
-
readonly threadId: string;
|
|
150
|
-
readonly mode: "agent" | "plan";
|
|
151
|
-
readonly busy: boolean;
|
|
152
|
-
readonly awaitingApproval: boolean;
|
|
153
|
-
}
|
|
154
|
-
export interface DesktopPluginComposerActionProps extends DesktopPluginViewProps {
|
|
155
|
-
readonly context: DesktopPluginComposerActionContext;
|
|
156
|
-
}
|
|
157
328
|
export interface DesktopPluginAssistantMessageModel {
|
|
158
329
|
readonly id: string;
|
|
159
330
|
readonly threadId: string;
|
|
@@ -209,14 +380,6 @@ export interface DesktopPluginToolRendererContribution {
|
|
|
209
380
|
readonly priority?: number;
|
|
210
381
|
readonly component: ComponentType<DesktopPluginToolRendererProps>;
|
|
211
382
|
}
|
|
212
|
-
export interface DesktopPluginComposerActionContribution {
|
|
213
|
-
readonly id: string;
|
|
214
|
-
readonly label: DesktopLocalizedText;
|
|
215
|
-
readonly icon?: DesktopPluginContributionIcon;
|
|
216
|
-
readonly order?: number;
|
|
217
|
-
readonly isAvailable?: (context: DesktopPluginComposerActionContext) => boolean;
|
|
218
|
-
readonly component: ComponentType<DesktopPluginComposerActionProps>;
|
|
219
|
-
}
|
|
220
383
|
export interface DesktopPluginMessageActionContribution {
|
|
221
384
|
readonly id: string;
|
|
222
385
|
readonly label: DesktopLocalizedText;
|
|
@@ -231,10 +394,9 @@ export interface DesktopPluginActivation {
|
|
|
231
394
|
readonly conversationViews?: readonly DesktopPluginConversationViewContribution[];
|
|
232
395
|
readonly commands?: readonly DesktopPluginCommandContribution[];
|
|
233
396
|
readonly toolRenderers?: readonly DesktopPluginToolRendererContribution[];
|
|
234
|
-
readonly composerActions?: readonly DesktopPluginComposerActionContribution[];
|
|
235
397
|
readonly messageActions?: readonly DesktopPluginMessageActionContribution[];
|
|
236
398
|
readonly dispose?: () => void | Promise<void>;
|
|
237
399
|
}
|
|
238
|
-
export type DesktopPluginActivate = (host: DesktopPluginHost) => DesktopPluginActivation | Promise<DesktopPluginActivation>;
|
|
400
|
+
export type DesktopPluginActivate = (host: DesktopPluginHost) => DesktopPluginActivation | void | Promise<DesktopPluginActivation | void>;
|
|
239
401
|
export {};
|
|
240
402
|
//# sourceMappingURL=contracts.d.ts.map
|
package/dist/contracts.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,13 +1,16 @@
|
|
|
1
|
-
export type { DesktopLocalizedText, DesktopPluginActivate, DesktopPluginActivation, DesktopPluginAppBindings, DesktopPluginAppServer, DesktopPluginAppSurfaces, DesktopPluginAssistantMessageModel, DesktopPluginCommandContext, DesktopPluginCommandContribution,
|
|
2
|
-
export type { ActionTooltipProps, ButtonProps, ButtonSize, ButtonVariant, CheckboxProps, ComboboxOption, ComboboxProps, DesktopPluginUiComponents, DesktopSelectComponent, FieldSize, IconButtonProps, InlineDiffProps, InputProps, ModalHeaderProps, PillSwitchProps, SelectOption, SelectProps, SkeletonProps, SpinnerProps, SettingsBreadcrumbProps, SettingsGroupProps, SettingsPanelShellProps, SettingsRowProps, TextareaProps, } from "./ui.js";
|
|
1
|
+
export type { DesktopLocalizedText, DesktopPluginActivate, DesktopPluginActivation, DesktopPluginAddOptions, DesktopPluginAppBindings, DesktopPluginAppServer, DesktopPluginAppSurfaces, DesktopPluginAppearance, DesktopPluginBackdropPresentation, DesktopPluginAssistantMessageModel, DesktopPluginCommandContext, DesktopPluginCommandContribution, DesktopPluginColorPickerBaseOptions, DesktopPluginColorPickerOptions, DesktopPluginColorPickerResult, DesktopPluginConfirmOptions, DesktopPluginConversationViewContribution, DesktopPluginConversationViewProps, DesktopPluginDispose, DesktopPluginEnvironment, DesktopPluginEnvironmentSnapshot, DesktopPluginThemeSeed, DesktopPluginThemeSeedOverrides, DesktopPluginEffectSetup, DesktopPluginEvents, DesktopPluginHost, DesktopPluginContributionIcon, DesktopPluginIconComponent, DesktopPluginIconProps, DesktopPluginLocale, DesktopPluginLocalProject, DesktopPluginMetadata, DesktopPluginMainViewContribution, DesktopPluginNavigation, DesktopPluginOratorio, DesktopPluginOratorioBoardEvent, DesktopPluginOratorioContext, DesktopPluginOratorioEvent, DesktopPluginOratorioHandoffRequest, DesktopPluginOratorioRequest, DesktopPluginOratorioResponse, DesktopPluginSession, DesktopPluginSessionSnapshot, DesktopPluginSettingsPageContribution, DesktopPluginSettingField, DesktopPluginSettingType, DesktopPluginSettings, DesktopPluginSettingsMutation, DesktopPluginSettingsSchema, DesktopPluginSettingsScope, DesktopPluginSettingsSnapshot, DesktopPluginServices, DesktopPluginAppSurfaceContext, DesktopPluginComposerMascotSurfaceContext, DesktopPluginComposerSurfaceContext, DesktopPluginMascotActivity, DesktopPluginSurfaceComponent, DesktopPluginSurfaceContext, DesktopPluginSurfaceContextMap, DesktopPluginSurfaceProps, DesktopPluginSurfaceWrapper, DesktopPluginSurfaceWrapperProps, DesktopPluginMessageActionContribution, DesktopPluginToolPresentationModel, DesktopPluginToolRendererContribution, DesktopPluginToolRendererProps, DesktopPluginToastOptions, DesktopPluginUi, DesktopPluginViewProps, DesktopPluginWorkspaceReader, } from "./contracts.js";
|
|
2
|
+
export type { ActionTooltipProps, ButtonProps, ButtonSize, ButtonVariant, CheckboxProps, ComboboxOption, ComboboxProps, DesktopPluginUiComponents, DesktopSegmentedControlComponent, DesktopSelectComponent, FieldSize, IconButtonProps, InlineDiffProps, InputProps, ModalHeaderProps, PillSwitchProps, PluginSurfaceComponent, PluginSurfaceProps, SegmentedControlOption, SegmentedControlProps, SelectOption, SelectProps, SkeletonProps, SliderProps, SpinnerProps, SettingsBreadcrumbProps, SettingsGroupProps, SettingsPanelShellProps, SettingsRowProps, TextareaProps, } from "./ui.js";
|
|
3
|
+
export declare const PluginSurface: import("./ui.js").PluginSurfaceComponent;
|
|
3
4
|
export declare const Button: import("react").ComponentType<import("./ui.js").ButtonProps>;
|
|
4
5
|
export declare const IconButton: import("react").ComponentType<import("./ui.js").IconButtonProps>;
|
|
5
6
|
export declare const Input: import("react").ComponentType<import("./ui.js").InputProps>;
|
|
6
7
|
export declare const Textarea: import("react").ComponentType<import("./ui.js").TextareaProps>;
|
|
7
8
|
export declare const Select: import("./ui.js").DesktopSelectComponent;
|
|
9
|
+
export declare const SegmentedControl: import("./ui.js").DesktopSegmentedControlComponent;
|
|
8
10
|
export declare const Checkbox: import("react").ComponentType<import("./ui.js").CheckboxProps>;
|
|
9
11
|
export declare const Spinner: import("react").ComponentType<import("./ui.js").SpinnerProps>;
|
|
10
12
|
export declare const Skeleton: import("react").ComponentType<import("./ui.js").SkeletonProps>;
|
|
13
|
+
export declare const Slider: import("react").ComponentType<import("./ui.js").SliderProps>;
|
|
11
14
|
export declare const ActionTooltip: import("react").ComponentType<import("./ui.js").ActionTooltipProps>;
|
|
12
15
|
export declare const Combobox: import("react").ComponentType<import("./ui.js").ComboboxProps>;
|
|
13
16
|
export declare const ModalHeader: import("react").ComponentType<import("./ui.js").ModalHeaderProps>;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,EACxB,kCAAkC,EAClC,2BAA2B,EAC3B,gCAAgC,EAChC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,iCAAiC,EACjC,kCAAkC,EAClC,2BAA2B,EAC3B,gCAAgC,EAChC,mCAAmC,EACnC,+BAA+B,EAC/B,8BAA8B,EAC9B,2BAA2B,EAC3B,yCAAyC,EACzC,kCAAkC,EAClC,oBAAoB,EACpB,wBAAwB,EACxB,gCAAgC,EAChC,sBAAsB,EACtB,+BAA+B,EAC/B,wBAAwB,EACxB,mBAAmB,EACnB,iBAAiB,EACjB,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACtB,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,iCAAiC,EACjC,uBAAuB,EACvB,qBAAqB,EACrB,+BAA+B,EAC/B,4BAA4B,EAC5B,0BAA0B,EAC1B,mCAAmC,EACnC,4BAA4B,EAC5B,6BAA6B,EAC7B,oBAAoB,EACpB,4BAA4B,EAC5B,qCAAqC,EACrC,yBAAyB,EACzB,wBAAwB,EACxB,qBAAqB,EACrB,6BAA6B,EAC7B,2BAA2B,EAC3B,0BAA0B,EAC1B,6BAA6B,EAC7B,qBAAqB,EACrB,8BAA8B,EAC9B,yCAAyC,EACzC,mCAAmC,EACnC,2BAA2B,EAC3B,6BAA6B,EAC7B,2BAA2B,EAC3B,8BAA8B,EAC9B,yBAAyB,EACzB,2BAA2B,EAC3B,gCAAgC,EAChC,sCAAsC,EACtC,kCAAkC,EAClC,qCAAqC,EACrC,8BAA8B,EAC9B,yBAAyB,EACzB,eAAe,EACf,sBAAsB,EACtB,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,kBAAkB,EAClB,WAAW,EACX,UAAU,EACV,aAAa,EACb,aAAa,EACb,cAAc,EACd,aAAa,EACb,yBAAyB,EACzB,gCAAgC,EAChC,sBAAsB,EACtB,SAAS,EACT,eAAe,EACf,eAAe,EACf,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,sBAAsB,EACtB,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACrB,YAAY,EACZ,WAAW,EACX,aAAa,EACb,WAAW,EACX,YAAY,EACZ,uBAAuB,EACvB,kBAAkB,EAClB,uBAAuB,EACvB,gBAAgB,EAChB,aAAa,GACd,MAAM,SAAS,CAAC;AAMjB,eAAO,MAAM,aAAa,0CAAmB,CAAC;AAC9C,eAAO,MAAM,MAAM,8DAAY,CAAC;AAChC,eAAO,MAAM,UAAU,kEAAgB,CAAC;AACxC,eAAO,MAAM,KAAK,6DAAW,CAAC;AAC9B,eAAO,MAAM,QAAQ,gEAAc,CAAC;AACpC,eAAO,MAAM,MAAM,0CAAY,CAAC;AAChC,eAAO,MAAM,gBAAgB,oDAAsB,CAAC;AACpD,eAAO,MAAM,QAAQ,gEAAc,CAAC;AACpC,eAAO,MAAM,OAAO,+DAAa,CAAC;AAClC,eAAO,MAAM,QAAQ,gEAAc,CAAC;AACpC,eAAO,MAAM,MAAM,8DAAY,CAAC;AAChC,eAAO,MAAM,aAAa,qEAAmB,CAAC;AAC9C,eAAO,MAAM,QAAQ,gEAAc,CAAC;AACpC,eAAO,MAAM,WAAW,mEAAiB,CAAC;AAC1C,eAAO,MAAM,UAAU,kEAAgB,CAAC;AACxC,eAAO,MAAM,kBAAkB,0EAAwB,CAAC;AACxD,eAAO,MAAM,kBAAkB,0EAAwB,CAAC;AACxD,eAAO,MAAM,aAAa,qEAAmB,CAAC;AAC9C,eAAO,MAAM,WAAW,mEAAiB,CAAC;AAC1C,eAAO,MAAM,UAAU,kEAAgB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
import { readDesktopPluginRuntime } from "./runtime.js";
|
|
2
2
|
const ui = readDesktopPluginRuntime().ui;
|
|
3
|
+
export const PluginSurface = ui.PluginSurface;
|
|
3
4
|
export const Button = ui.Button;
|
|
4
5
|
export const IconButton = ui.IconButton;
|
|
5
6
|
export const Input = ui.Input;
|
|
6
7
|
export const Textarea = ui.Textarea;
|
|
7
8
|
export const Select = ui.Select;
|
|
9
|
+
export const SegmentedControl = ui.SegmentedControl;
|
|
8
10
|
export const Checkbox = ui.Checkbox;
|
|
9
11
|
export const Spinner = ui.Spinner;
|
|
10
12
|
export const Skeleton = ui.Skeleton;
|
|
13
|
+
export const Slider = ui.Slider;
|
|
11
14
|
export const ActionTooltip = ui.ActionTooltip;
|
|
12
15
|
export const Combobox = ui.Combobox;
|
|
13
16
|
export const ModalHeader = ui.ModalHeader;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAyGA,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAExD,MAAM,EAAE,GAAG,wBAAwB,EAAE,CAAC,EAAE,CAAC;AAEzC,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,CAAC,aAAa,CAAC;AAC9C,MAAM,CAAC,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC;AAChC,MAAM,CAAC,MAAM,UAAU,GAAG,EAAE,CAAC,UAAU,CAAC;AACxC,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC;AAC9B,MAAM,CAAC,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC;AACpC,MAAM,CAAC,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC;AAChC,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC,gBAAgB,CAAC;AACpD,MAAM,CAAC,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC;AACpC,MAAM,CAAC,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC;AAClC,MAAM,CAAC,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC;AACpC,MAAM,CAAC,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC;AAChC,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,CAAC,aAAa,CAAC;AAC9C,MAAM,CAAC,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC;AACpC,MAAM,CAAC,MAAM,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC;AAC1C,MAAM,CAAC,MAAM,UAAU,GAAG,EAAE,CAAC,UAAU,CAAC;AACxC,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC,kBAAkB,CAAC;AACxD,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC,kBAAkB,CAAC;AACxD,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,CAAC,aAAa,CAAC;AAC9C,MAAM,CAAC,MAAM,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC;AAC1C,MAAM,CAAC,MAAM,UAAU,GAAG,EAAE,CAAC,UAAU,CAAC"}
|
package/dist/ui.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { ButtonHTMLAttributes, ComponentType, CSSProperties, InputHTMLAttributes, ReactNode, TextareaHTMLAttributes } from "react";
|
|
2
|
+
import type { DesktopPluginSurfaceContext } from "./contracts.js";
|
|
2
3
|
export type ButtonVariant = "primary" | "secondary" | "ghost" | "danger" | "accent" | "outline";
|
|
3
4
|
export type ButtonSize = "default" | "sm" | "icon" | "iconSm" | "prominent" | "toolbar";
|
|
4
5
|
export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
@@ -46,6 +47,17 @@ export interface SelectProps<T extends string = string> {
|
|
|
46
47
|
readonly appearance?: "field" | "frameless";
|
|
47
48
|
readonly adaptiveWidth?: boolean;
|
|
48
49
|
}
|
|
50
|
+
export interface SegmentedControlOption<T extends string = string> {
|
|
51
|
+
readonly value: T;
|
|
52
|
+
readonly label: string;
|
|
53
|
+
}
|
|
54
|
+
export interface SegmentedControlProps<T extends string = string> {
|
|
55
|
+
readonly value: T;
|
|
56
|
+
readonly options: readonly SegmentedControlOption<T>[];
|
|
57
|
+
readonly onValueChange: (value: T) => void;
|
|
58
|
+
readonly ariaLabel: string;
|
|
59
|
+
readonly disabled?: boolean;
|
|
60
|
+
}
|
|
49
61
|
export interface CheckboxProps {
|
|
50
62
|
readonly id?: string;
|
|
51
63
|
readonly checked: boolean;
|
|
@@ -66,6 +78,17 @@ export interface SkeletonProps {
|
|
|
66
78
|
readonly circle?: boolean;
|
|
67
79
|
readonly style?: CSSProperties;
|
|
68
80
|
}
|
|
81
|
+
export interface SliderProps {
|
|
82
|
+
readonly value: number;
|
|
83
|
+
readonly min: number;
|
|
84
|
+
readonly max: number;
|
|
85
|
+
readonly step?: number;
|
|
86
|
+
readonly onValueChange: (value: number) => void;
|
|
87
|
+
readonly onValueCommit?: (value: number) => void;
|
|
88
|
+
readonly ariaLabel: string;
|
|
89
|
+
readonly valueText?: string;
|
|
90
|
+
readonly disabled?: boolean;
|
|
91
|
+
}
|
|
69
92
|
export interface ActionTooltipProps {
|
|
70
93
|
readonly label: string;
|
|
71
94
|
readonly multiline?: boolean;
|
|
@@ -113,13 +136,17 @@ export interface SettingsGroupProps {
|
|
|
113
136
|
readonly title?: string;
|
|
114
137
|
readonly description?: ReactNode;
|
|
115
138
|
readonly headerAction?: ReactNode;
|
|
139
|
+
readonly flush?: boolean;
|
|
116
140
|
readonly children: ReactNode;
|
|
117
141
|
}
|
|
118
142
|
export interface SettingsRowProps {
|
|
119
143
|
readonly label?: ReactNode;
|
|
120
144
|
readonly description?: ReactNode;
|
|
145
|
+
readonly htmlFor?: string;
|
|
121
146
|
readonly control?: ReactNode;
|
|
122
147
|
readonly controlMinWidth?: number | string;
|
|
148
|
+
readonly orientation?: "inline" | "block";
|
|
149
|
+
readonly align?: "center" | "flex-start";
|
|
123
150
|
readonly children?: ReactNode;
|
|
124
151
|
}
|
|
125
152
|
export interface InlineDiffProps {
|
|
@@ -128,18 +155,32 @@ export interface InlineDiffProps {
|
|
|
128
155
|
readonly before: string;
|
|
129
156
|
readonly after: string;
|
|
130
157
|
}
|
|
158
|
+
export interface PluginSurfaceProps<Surface extends string = string> {
|
|
159
|
+
readonly name: Surface;
|
|
160
|
+
readonly context: DesktopPluginSurfaceContext<Surface>;
|
|
161
|
+
readonly children?: ReactNode;
|
|
162
|
+
}
|
|
163
|
+
export interface PluginSurfaceComponent {
|
|
164
|
+
<Surface extends string = string>(props: PluginSurfaceProps<Surface>): ReactNode;
|
|
165
|
+
}
|
|
131
166
|
export interface DesktopSelectComponent {
|
|
132
167
|
<T extends string = string>(props: SelectProps<T>): ReactNode;
|
|
133
168
|
}
|
|
169
|
+
export interface DesktopSegmentedControlComponent {
|
|
170
|
+
<T extends string = string>(props: SegmentedControlProps<T>): ReactNode;
|
|
171
|
+
}
|
|
134
172
|
export interface DesktopPluginUiComponents {
|
|
173
|
+
readonly PluginSurface: PluginSurfaceComponent;
|
|
135
174
|
readonly Button: ComponentType<ButtonProps>;
|
|
136
175
|
readonly IconButton: ComponentType<IconButtonProps>;
|
|
137
176
|
readonly Input: ComponentType<InputProps>;
|
|
138
177
|
readonly Textarea: ComponentType<TextareaProps>;
|
|
139
178
|
readonly Select: DesktopSelectComponent;
|
|
179
|
+
readonly SegmentedControl: DesktopSegmentedControlComponent;
|
|
140
180
|
readonly Checkbox: ComponentType<CheckboxProps>;
|
|
141
181
|
readonly Spinner: ComponentType<SpinnerProps>;
|
|
142
182
|
readonly Skeleton: ComponentType<SkeletonProps>;
|
|
183
|
+
readonly Slider: ComponentType<SliderProps>;
|
|
143
184
|
readonly ActionTooltip: ComponentType<ActionTooltipProps>;
|
|
144
185
|
readonly Combobox: ComponentType<ComboboxProps>;
|
|
145
186
|
readonly ModalHeader: ComponentType<ModalHeaderProps>;
|
package/dist/ui.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,SAAS,EACT,sBAAsB,EACvB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dotcraft/plugin",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.1",
|
|
4
4
|
"description": "TypeScript and React authoring tools for DotCraft Plugin desktop modules",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -34,11 +34,11 @@
|
|
|
34
34
|
"scripts": {
|
|
35
35
|
"build": "node ../../scripts/clean-dist.mjs . && tsc -p tsconfig.json",
|
|
36
36
|
"build:plugin": "node scripts/build-plugin.mjs build",
|
|
37
|
-
"typecheck": "tsc --noEmit -p tsconfig.json",
|
|
38
|
-
"test": "npm run build && node --test scripts/runtime.test.mjs && node scripts/build-plugin.test.mjs"
|
|
37
|
+
"typecheck": "tsc --noEmit -p tsconfig.type-tests.json",
|
|
38
|
+
"test": "npm run typecheck && npm run build && node --test scripts/runtime.test.mjs && node scripts/build-plugin.test.mjs"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@dotcraft/sdk": "0.
|
|
41
|
+
"@dotcraft/sdk": "0.6.1",
|
|
42
42
|
"esbuild": "^0.25.11"
|
|
43
43
|
},
|
|
44
44
|
"peerDependencies": {
|
package/scripts/build-plugin.mjs
CHANGED
|
@@ -6,6 +6,17 @@ import { fileURLToPath } from "node:url";
|
|
|
6
6
|
import { build } from "esbuild";
|
|
7
7
|
|
|
8
8
|
const packageRoot = resolve(dirname(fileURLToPath(import.meta.url)), "..");
|
|
9
|
+
const assetLoaders = {
|
|
10
|
+
".gif": "file",
|
|
11
|
+
".jpg": "file",
|
|
12
|
+
".jpeg": "file",
|
|
13
|
+
".png": "file",
|
|
14
|
+
".svg": "file",
|
|
15
|
+
".webp": "file",
|
|
16
|
+
};
|
|
17
|
+
const assetFilter = new RegExp(`(?:${Object.keys(assetLoaders).map(escapeRegExp).join("|")})$`, "i");
|
|
18
|
+
const assetNamespace = "dotcraft-plugin-asset";
|
|
19
|
+
const assetImportKinds = new Set(["import-statement", "dynamic-import", "require-call"]);
|
|
9
20
|
const proxyEntries = new Map([
|
|
10
21
|
["@dotcraft/plugin", join(packageRoot, "dist", "index.js")],
|
|
11
22
|
["react", join(packageRoot, "dist", "react.js")],
|
|
@@ -45,15 +56,8 @@ async function buildDesktopPlugin(projectRoot = process.cwd()) {
|
|
|
45
56
|
minify: true,
|
|
46
57
|
metafile: true,
|
|
47
58
|
logLevel: "silent",
|
|
48
|
-
loader:
|
|
49
|
-
|
|
50
|
-
".jpg": "file",
|
|
51
|
-
".jpeg": "file",
|
|
52
|
-
".png": "file",
|
|
53
|
-
".svg": "file",
|
|
54
|
-
".webp": "file",
|
|
55
|
-
},
|
|
56
|
-
plugins: [runtimeProxyPlugin()],
|
|
59
|
+
loader: assetLoaders,
|
|
60
|
+
plugins: [runtimeProxyPlugin(), assetUrlPlugin()],
|
|
57
61
|
});
|
|
58
62
|
|
|
59
63
|
const bundledReact = Object.keys(result.metafile.inputs).find((input) =>
|
|
@@ -92,6 +96,38 @@ function runtimeProxyPlugin() {
|
|
|
92
96
|
};
|
|
93
97
|
}
|
|
94
98
|
|
|
99
|
+
/**
|
|
100
|
+
* Turns an asset import into the absolute URL of the emitted file. Desktop serves a plugin from
|
|
101
|
+
* `dotcraft-plugin://<id>/<revision>/`, which is not knowable at build time, so the bundle resolves
|
|
102
|
+
* the emitted path against its own module URL instead of a static `publicPath`. CSS `url()` tokens
|
|
103
|
+
* are left alone: a stylesheet already resolves them against its own address.
|
|
104
|
+
*/
|
|
105
|
+
function assetUrlPlugin() {
|
|
106
|
+
return {
|
|
107
|
+
name: "dotcraft-plugin-asset-url",
|
|
108
|
+
setup(buildContext) {
|
|
109
|
+
buildContext.onResolve({ filter: assetFilter }, async (args) => {
|
|
110
|
+
if (args.namespace === assetNamespace || !assetImportKinds.has(args.kind)) return null;
|
|
111
|
+
const resolved = await buildContext.resolve(args.path, {
|
|
112
|
+
importer: args.importer,
|
|
113
|
+
kind: args.kind,
|
|
114
|
+
resolveDir: args.resolveDir,
|
|
115
|
+
namespace: assetNamespace,
|
|
116
|
+
});
|
|
117
|
+
if (resolved.errors.length > 0 || resolved.external) return null;
|
|
118
|
+
return { path: resolved.path, namespace: assetNamespace };
|
|
119
|
+
});
|
|
120
|
+
|
|
121
|
+
buildContext.onLoad({ filter: /.*/, namespace: assetNamespace }, (args) => ({
|
|
122
|
+
contents: `import assetPath from ${JSON.stringify(args.path)};\n`
|
|
123
|
+
+ "export default new URL(assetPath, import.meta.url).href;\n",
|
|
124
|
+
resolveDir: dirname(args.path),
|
|
125
|
+
loader: "js",
|
|
126
|
+
}));
|
|
127
|
+
},
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
|
|
95
131
|
function walkFiles(root) {
|
|
96
132
|
const files = [];
|
|
97
133
|
for (const entry of readdirSync(root, { withFileTypes: true })) {
|