microboard-temp 0.14.18 → 0.14.19
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/dist/cjs/browser.js +427 -84
- package/dist/cjs/index.js +427 -84
- package/dist/cjs/node.js +427 -84
- package/dist/esm/browser.js +427 -84
- package/dist/esm/index.js +427 -84
- package/dist/esm/node.js +427 -84
- package/dist/types/Overlay/IconPack.d.ts +4 -0
- package/dist/types/Overlay/OverlayMetadata.d.ts +92 -1
- package/dist/types/Overlay/index.d.ts +1 -0
- package/dist/types/Overlay/overlayRegistry.d.ts +19 -1
- package/package.json +1 -1
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { OverlayIcon } from "./OverlayMetadata";
|
|
2
|
+
export declare const OVERLAY_ICON_SPRITE_PATH = "src/Overlay/overlay-icons.svg";
|
|
3
|
+
export declare function overlaySymbolIcon(key: string): OverlayIcon;
|
|
4
|
+
export declare function overlayAssetIcon(path: string): OverlayIcon;
|
|
@@ -6,6 +6,33 @@ export type OverlayValueSource = {
|
|
|
6
6
|
kind: "toolProperty";
|
|
7
7
|
property: string;
|
|
8
8
|
};
|
|
9
|
+
export type OverlayCondition = {
|
|
10
|
+
kind: "equals";
|
|
11
|
+
source: OverlayValueSource;
|
|
12
|
+
value: unknown;
|
|
13
|
+
} | {
|
|
14
|
+
kind: "truthy";
|
|
15
|
+
source: OverlayValueSource;
|
|
16
|
+
} | {
|
|
17
|
+
kind: "falsy";
|
|
18
|
+
source: OverlayValueSource;
|
|
19
|
+
} | {
|
|
20
|
+
kind: "itemTypeIn";
|
|
21
|
+
itemTypes: string[];
|
|
22
|
+
} | {
|
|
23
|
+
kind: "selectionSize";
|
|
24
|
+
min?: number;
|
|
25
|
+
max?: number;
|
|
26
|
+
} | {
|
|
27
|
+
kind: "allOf";
|
|
28
|
+
conditions: OverlayCondition[];
|
|
29
|
+
} | {
|
|
30
|
+
kind: "anyOf";
|
|
31
|
+
conditions: OverlayCondition[];
|
|
32
|
+
} | {
|
|
33
|
+
kind: "not";
|
|
34
|
+
condition: OverlayCondition;
|
|
35
|
+
};
|
|
9
36
|
export interface OverlayIconStateHint {
|
|
10
37
|
swatch?: OverlayValueSource;
|
|
11
38
|
note?: string;
|
|
@@ -18,6 +45,7 @@ export type OverlayIcon = {
|
|
|
18
45
|
} | {
|
|
19
46
|
kind: "symbol";
|
|
20
47
|
key: string;
|
|
48
|
+
sourcePath?: string;
|
|
21
49
|
state?: OverlayIconStateHint;
|
|
22
50
|
};
|
|
23
51
|
export interface OverlayOptionDefinition {
|
|
@@ -26,6 +54,7 @@ export interface OverlayOptionDefinition {
|
|
|
26
54
|
value: unknown;
|
|
27
55
|
icon?: OverlayIcon;
|
|
28
56
|
description?: string;
|
|
57
|
+
family?: string;
|
|
29
58
|
}
|
|
30
59
|
export interface OverlayCatalogDefinition {
|
|
31
60
|
kind: "catalog";
|
|
@@ -42,11 +71,20 @@ export interface OverlayColorEditor extends OverlayEditorBase {
|
|
|
42
71
|
kind: "color";
|
|
43
72
|
palette?: string[];
|
|
44
73
|
allowTransparent?: boolean;
|
|
74
|
+
presentation?: "circle" | "square" | "sticker";
|
|
75
|
+
}
|
|
76
|
+
export interface OverlayQuickOptionsDefinition {
|
|
77
|
+
family?: string;
|
|
78
|
+
optionIds?: string[];
|
|
79
|
+
maxVisible?: number;
|
|
80
|
+
overflow?: "clip" | "scroll" | "show-more";
|
|
45
81
|
}
|
|
46
82
|
export interface OverlayEnumIconEditor extends OverlayEditorBase {
|
|
47
83
|
kind: "enum-icon";
|
|
48
84
|
options: OverlayOptionDefinition[];
|
|
49
85
|
catalog?: OverlayCatalogDefinition;
|
|
86
|
+
layout?: "row" | "grid" | "list";
|
|
87
|
+
quickOptions?: OverlayQuickOptionsDefinition;
|
|
50
88
|
}
|
|
51
89
|
export interface OverlayEnumListEditor extends OverlayEditorBase {
|
|
52
90
|
kind: "enum-list";
|
|
@@ -79,6 +117,20 @@ export interface OverlayDynamicOptionsEditor extends OverlayEditorBase {
|
|
|
79
117
|
providerId: string;
|
|
80
118
|
presentation: "list" | "icon-grid";
|
|
81
119
|
}
|
|
120
|
+
export interface OverlayAssetUploadFieldDefinition {
|
|
121
|
+
id: string;
|
|
122
|
+
label: string;
|
|
123
|
+
description?: string;
|
|
124
|
+
accept?: string[];
|
|
125
|
+
multiple?: boolean;
|
|
126
|
+
required?: boolean;
|
|
127
|
+
}
|
|
128
|
+
export interface OverlayAssetUploadEditor extends OverlayEditorBase {
|
|
129
|
+
kind: "asset-upload";
|
|
130
|
+
mode: "single" | "multiple" | "paired";
|
|
131
|
+
accept?: string[];
|
|
132
|
+
fields?: OverlayAssetUploadFieldDefinition[];
|
|
133
|
+
}
|
|
82
134
|
export interface OverlayToggleEditor extends OverlayEditorBase {
|
|
83
135
|
kind: "toggle";
|
|
84
136
|
trueLabel?: string;
|
|
@@ -90,7 +142,7 @@ export interface OverlayCatalogEditor extends OverlayEditorBase {
|
|
|
90
142
|
options: OverlayOptionDefinition[];
|
|
91
143
|
presentation?: "grid" | "list";
|
|
92
144
|
}
|
|
93
|
-
export type OverlayEditor = OverlayColorEditor | OverlayEnumIconEditor | OverlayEnumListEditor | OverlayNumberEditor | OverlayNumberStepperEditor | OverlaySliderEditor | OverlayDynamicOptionsEditor | OverlayToggleEditor | OverlayCatalogEditor;
|
|
145
|
+
export type OverlayEditor = OverlayColorEditor | OverlayEnumIconEditor | OverlayEnumListEditor | OverlayNumberEditor | OverlayNumberStepperEditor | OverlaySliderEditor | OverlayDynamicOptionsEditor | OverlayAssetUploadEditor | OverlayToggleEditor | OverlayCatalogEditor;
|
|
94
146
|
export type OverlayInvocationArg = {
|
|
95
147
|
kind: "control";
|
|
96
148
|
controlId: string;
|
|
@@ -132,6 +184,7 @@ export interface OverlayControlDefinition {
|
|
|
132
184
|
editor: OverlayEditor;
|
|
133
185
|
valueAdapter?: OverlayControlValueAdapter;
|
|
134
186
|
invoke?: OverlayInvocation;
|
|
187
|
+
when?: OverlayCondition;
|
|
135
188
|
}
|
|
136
189
|
export interface OverlayControlGroupDefinition {
|
|
137
190
|
id: string;
|
|
@@ -139,6 +192,7 @@ export interface OverlayControlGroupDefinition {
|
|
|
139
192
|
icon?: OverlayIcon;
|
|
140
193
|
controlIds: string[];
|
|
141
194
|
description?: string;
|
|
195
|
+
when?: OverlayCondition;
|
|
142
196
|
}
|
|
143
197
|
export type OverlayActionTarget = "single" | "each" | "selection";
|
|
144
198
|
export interface OverlayActionDefinition {
|
|
@@ -150,10 +204,19 @@ export interface OverlayActionDefinition {
|
|
|
150
204
|
invoke?: OverlayInvocation;
|
|
151
205
|
controls?: OverlayControlDefinition[];
|
|
152
206
|
groups?: OverlayControlGroupDefinition[];
|
|
207
|
+
when?: OverlayCondition;
|
|
208
|
+
}
|
|
209
|
+
export interface OverlayActionSectionDefinition {
|
|
210
|
+
id: string;
|
|
211
|
+
label: string;
|
|
212
|
+
icon?: OverlayIcon;
|
|
213
|
+
actionIds: string[];
|
|
214
|
+
description?: string;
|
|
153
215
|
}
|
|
154
216
|
export interface ItemOverlayDefinition {
|
|
155
217
|
itemType: string;
|
|
156
218
|
actions: OverlayActionDefinition[];
|
|
219
|
+
sections?: OverlayActionSectionDefinition[];
|
|
157
220
|
}
|
|
158
221
|
export interface SelectionOverlayActionDefinition {
|
|
159
222
|
id: string;
|
|
@@ -169,6 +232,32 @@ export interface ToolDefaultsDefinition {
|
|
|
169
232
|
controls: OverlayControlDefinition[];
|
|
170
233
|
groups?: OverlayControlGroupDefinition[];
|
|
171
234
|
}
|
|
235
|
+
export interface OverlayWorkflowDefinition {
|
|
236
|
+
kind: "property-sheet";
|
|
237
|
+
controls: OverlayControlDefinition[];
|
|
238
|
+
groups?: OverlayControlGroupDefinition[];
|
|
239
|
+
submitLabel?: string;
|
|
240
|
+
description?: string;
|
|
241
|
+
}
|
|
242
|
+
export interface OverlayToolGroupDefinition {
|
|
243
|
+
id: string;
|
|
244
|
+
label: string;
|
|
245
|
+
icon?: OverlayIcon;
|
|
246
|
+
description?: string;
|
|
247
|
+
order?: number;
|
|
248
|
+
behavior?: "open-panel" | "activate-last-used";
|
|
249
|
+
}
|
|
250
|
+
export interface OverlayToolSurfaceDefinition {
|
|
251
|
+
order?: number;
|
|
252
|
+
group?: OverlayToolGroupDefinition;
|
|
253
|
+
relatedToolNames?: string[];
|
|
254
|
+
}
|
|
255
|
+
export type OverlayToolLaunchDefinition = {
|
|
256
|
+
kind: "activate-tool";
|
|
257
|
+
} | {
|
|
258
|
+
kind: "workflow";
|
|
259
|
+
workflow: OverlayWorkflowDefinition;
|
|
260
|
+
};
|
|
172
261
|
export interface ToolOverlayDefinition {
|
|
173
262
|
toolName: string;
|
|
174
263
|
label: string;
|
|
@@ -178,5 +267,7 @@ export interface ToolOverlayDefinition {
|
|
|
178
267
|
description?: string;
|
|
179
268
|
createsItemType?: string;
|
|
180
269
|
defaults?: ToolDefaultsDefinition;
|
|
270
|
+
launch?: OverlayToolLaunchDefinition;
|
|
271
|
+
surface?: OverlayToolSurfaceDefinition;
|
|
181
272
|
}
|
|
182
273
|
export {};
|
|
@@ -1,12 +1,28 @@
|
|
|
1
1
|
import type { BaseItem } from "../Items/BaseItem/BaseItem";
|
|
2
2
|
import type { Tool } from "../Tools/Tool";
|
|
3
|
-
import type { ItemOverlayDefinition, OverlayActionDefinition, OverlayOptionDefinition, SelectionOverlayActionDefinition, ToolOverlayDefinition } from "./OverlayMetadata";
|
|
3
|
+
import type { ItemOverlayDefinition, OverlayActionDefinition, OverlayCondition, OverlayOptionDefinition, SelectionOverlayActionDefinition, ToolOverlayDefinition } from "./OverlayMetadata";
|
|
4
4
|
export interface OverlayDynamicOptionsContext {
|
|
5
5
|
item?: BaseItem;
|
|
6
6
|
items?: readonly BaseItem[];
|
|
7
7
|
tool?: Tool;
|
|
8
8
|
}
|
|
9
9
|
export type OverlayDynamicOptionsResolver = (context: OverlayDynamicOptionsContext) => OverlayOptionDefinition[];
|
|
10
|
+
export interface OverlayCreateSurfaceGroupEntry {
|
|
11
|
+
kind: "group";
|
|
12
|
+
id: string;
|
|
13
|
+
label: string;
|
|
14
|
+
description?: string;
|
|
15
|
+
icon?: ToolOverlayDefinition["icon"];
|
|
16
|
+
order?: number;
|
|
17
|
+
behavior?: "open-panel" | "activate-last-used";
|
|
18
|
+
tools: ToolOverlayDefinition[];
|
|
19
|
+
}
|
|
20
|
+
export interface OverlayCreateSurfaceToolEntry {
|
|
21
|
+
kind: "tool";
|
|
22
|
+
tool: ToolOverlayDefinition;
|
|
23
|
+
order?: number;
|
|
24
|
+
}
|
|
25
|
+
export type OverlayCreateSurfaceEntry = OverlayCreateSurfaceGroupEntry | OverlayCreateSurfaceToolEntry;
|
|
10
26
|
export declare const itemOverlays: Record<string, ItemOverlayDefinition>;
|
|
11
27
|
export declare const toolOverlays: Record<string, ToolOverlayDefinition>;
|
|
12
28
|
export declare const dynamicOptionsResolvers: Record<string, OverlayDynamicOptionsResolver>;
|
|
@@ -18,7 +34,9 @@ export declare function registerDynamicOptionsResolver(id: string, resolver: Ove
|
|
|
18
34
|
export declare function getItemOverlay(itemOrType: BaseItem | string): ItemOverlayDefinition | undefined;
|
|
19
35
|
export declare function getToolOverlay(toolName: string): ToolOverlayDefinition | undefined;
|
|
20
36
|
export declare function listToolOverlays(): ToolOverlayDefinition[];
|
|
37
|
+
export declare function listCreateSurfaceEntries(): OverlayCreateSurfaceEntry[];
|
|
21
38
|
export declare function listSelectionActions(): SelectionOverlayActionDefinition[];
|
|
22
39
|
export declare function getSelectionOverlayActions(items: readonly BaseItem[]): SelectionOverlayActionDefinition[];
|
|
23
40
|
export declare function resolveDynamicOptions(providerId: string, context: OverlayDynamicOptionsContext): OverlayOptionDefinition[];
|
|
41
|
+
export declare function matchesOverlayCondition(condition: OverlayCondition | undefined, context: OverlayDynamicOptionsContext): boolean;
|
|
24
42
|
export declare function intersectOverlayActions(items: readonly BaseItem[]): OverlayActionDefinition[];
|