@elyx-code/project-logic-tree 0.0.7223 → 0.0.7224
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.
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { IComposableCommand, ICommandStepResolution, ICommandPart } from './extensions';
|
|
2
|
+
|
|
3
|
+
export declare function getSubcommandsList(cmd: IComposableCommand): IComposableCommand[];
|
|
4
|
+
export declare function getSubcommandsMap(cmd: IComposableCommand): Record<string, IComposableCommand>;
|
|
5
|
+
/**
|
|
6
|
+
* Dynamically resolves the active step, placeholder, ghost hint, and completion state
|
|
7
|
+
* for a composable command based on the sequence of confirmed parts and active input.
|
|
8
|
+
*/
|
|
9
|
+
export declare function resolveCommandStep(command: IComposableCommand | null | undefined, confirmedParts: ICommandPart[], activeSegmentText: string, _ctx?: any): ICommandStepResolution;
|
|
@@ -83,10 +83,170 @@ export interface ICommandDefinition {
|
|
|
83
83
|
description?: string;
|
|
84
84
|
category: string;
|
|
85
85
|
executionType: CommandExecutionType | 'client-process' | 'agent-process';
|
|
86
|
-
hasRichEditor?: boolean;
|
|
87
86
|
subcommands?: ICommandSubcommandOption[];
|
|
88
87
|
args?: ICommandArgDef[];
|
|
89
88
|
}
|
|
89
|
+
export declare enum NamedColor {
|
|
90
|
+
MainGrey = "main-grey",
|
|
91
|
+
LightGrey = "light-grey",
|
|
92
|
+
DarkGrey = "dark-grey",
|
|
93
|
+
LighterGrey = "lighter-grey",
|
|
94
|
+
BackgroundGrey = "background-grey",
|
|
95
|
+
MainPrimary = "main-primary",
|
|
96
|
+
SupportPrimary = "support-primary",
|
|
97
|
+
TextPrimary = "text-primary",
|
|
98
|
+
ContrastPrimary = "contrast-primary",
|
|
99
|
+
LightContrastPrimary = "light-contrast-primary",
|
|
100
|
+
BackgroundPrimary = "background-primary",
|
|
101
|
+
MainError = "main-error",
|
|
102
|
+
MainDarkError = "main-dark-error",
|
|
103
|
+
SupportError = "support-error",
|
|
104
|
+
TextError = "text-error",
|
|
105
|
+
ContrastError = "contrast-error",
|
|
106
|
+
BackgroundError = "background-error",
|
|
107
|
+
MainSuccess = "main-success",
|
|
108
|
+
MainDarkSuccess = "main-dark-success",
|
|
109
|
+
SupportSuccess = "support-success",
|
|
110
|
+
TextSuccess = "text-success",
|
|
111
|
+
ContrastSuccess = "contrast-success",
|
|
112
|
+
BackgroundSuccess = "background-success",
|
|
113
|
+
MainWarning = "main-warning",
|
|
114
|
+
SupportWarning = "support-warning",
|
|
115
|
+
TextWarning = "text-warning",
|
|
116
|
+
ContrastWarning = "contrast-warning",
|
|
117
|
+
BackgroundWarning = "background-warning",
|
|
118
|
+
BackgroundDefinitionEntity = "background--definition-entity",
|
|
119
|
+
BackgroundSupportDefinitionEntity = "background-support--definition-entity",
|
|
120
|
+
BackgroundSuggestionDefinitionEntity = "background-suggestion--definition-entity",
|
|
121
|
+
BackgroundSupportSuggestionDefinitionEntity = "background-support-suggestion--definition-entity",
|
|
122
|
+
BackgroundDisabledDefinitionEntity = "background-disabled--definition-entity",
|
|
123
|
+
IconDefinitionEntity = "icon--definition-entity",
|
|
124
|
+
TextDefinitionEntity = "text--definition-entity",
|
|
125
|
+
BackgroundProperty = "background--property",
|
|
126
|
+
BackgroundSupportProperty = "background-support--property",
|
|
127
|
+
IconProperty = "icon--property",
|
|
128
|
+
TextProperty = "text--property",
|
|
129
|
+
BackgroundFunctionCall = "background--function-call",
|
|
130
|
+
BackgroundOperation = "background--operation",
|
|
131
|
+
BackgroundSupportFunctionCall = "background-support--function-call",
|
|
132
|
+
BackgroundSupportOperation = "background-support--operation",
|
|
133
|
+
BackgroundSuggestionFunctionCall = "background-suggestion--function-call",
|
|
134
|
+
BackgroundSuggestionOperation = "background-suggestion--operation",
|
|
135
|
+
BackgroundSupportSuggestionFunctionCall = "background-support-suggestion--function-call",
|
|
136
|
+
BackgroundSupportSuggestionOperation = "background-support-suggestion--operation",
|
|
137
|
+
BackgroundDisabledFunctionCall = "background-disabled--function-call",
|
|
138
|
+
BackgroundDisabledOperation = "background-disabled--operation",
|
|
139
|
+
IconFunctionCall = "icon--function-call",
|
|
140
|
+
IconOperation = "icon--operation",
|
|
141
|
+
TextFunctionCall = "text--function-call",
|
|
142
|
+
TextOperation = "text--operation",
|
|
143
|
+
BackgroundInternalCall = "background--internal-call",
|
|
144
|
+
BackgroundSupportInternalCall = "background-support--internal-call",
|
|
145
|
+
BackgroundSuggestionInternalCall = "background-suggestion--internal-call",
|
|
146
|
+
BackgroundSupportSuggestionInternalCall = "background-support-suggestion--internal-call",
|
|
147
|
+
BackgroundDisabledInternalCall = "background-disabled--internal-call",
|
|
148
|
+
IconInternalCall = "icon--internal-call",
|
|
149
|
+
TextInternalCall = "text--internal-call",
|
|
150
|
+
BackgroundGlobalEvent = "background--global-event",
|
|
151
|
+
BackgroundFunctionDeclaration = "background--function-declaration",
|
|
152
|
+
BackgroundSupportGlobalEvent = "background-support--global-event",
|
|
153
|
+
BackgroundSupportFunctionDeclaration = "background-support--function-declaration",
|
|
154
|
+
BackgroundSuggestionFunctionDeclaration = "background-suggestion--function-declaration",
|
|
155
|
+
BackgroundSuggestionGlobalEvent = "background-suggestion--global-event",
|
|
156
|
+
BackgroundSupportSuggestionFunctionDeclaration = "background-support-suggestion--function-declaration",
|
|
157
|
+
BackgroundSupportSuggestionGlobalEvent = "background-support-suggestion--global-event",
|
|
158
|
+
BackgroundDisabledGlobalEvent = "background-disabled--global-event",
|
|
159
|
+
BackgroundDisabledFunctionDeclaration = "background-disabled--function-declaration",
|
|
160
|
+
IconGlobalEvent = "icon--global-event",
|
|
161
|
+
IconFunctionDeclaration = "icon--function-declaration",
|
|
162
|
+
TextGlobalEvent = "text--global-event",
|
|
163
|
+
TextFunctionDeclaration = "text--function-declaration",
|
|
164
|
+
BackgroundProject = "background--project",
|
|
165
|
+
BackgroundSupportProject = "background-support--project",
|
|
166
|
+
BackgroundSuggestionProject = "background-suggestion--project",
|
|
167
|
+
BackgroundSupportSuggestionProject = "background-support-suggestion--project",
|
|
168
|
+
BackgroundDisabledProject = "background-disabled--project",
|
|
169
|
+
IconProject = "icon--project",
|
|
170
|
+
TextProject = "text--project",
|
|
171
|
+
BackgroundCondition = "background--condition",
|
|
172
|
+
BackgroundSupportCondition = "background-support--condition",
|
|
173
|
+
BackgroundSuggestionCondition = "background-suggestion--condition",
|
|
174
|
+
BackgroundSupportSuggestionCondition = "background-support-suggestion--condition",
|
|
175
|
+
BackgroundDisabledCondition = "background-disabled--condition",
|
|
176
|
+
IconCondition = "icon--condition",
|
|
177
|
+
TextCondition = "text--condition",
|
|
178
|
+
BackgroundReturnStatement = "background--return-statement",
|
|
179
|
+
BackgroundLightReturnStatement = "background-light--return-statement",
|
|
180
|
+
BackgroundContinueStatement = "background--continue-statement",
|
|
181
|
+
BackgroundLightContinueStatement = "background-light--continue-statement",
|
|
182
|
+
BackgroundBreakStatement = "background--break-statement",
|
|
183
|
+
BackgroundLightBreakStatement = "background-light--break-statement",
|
|
184
|
+
BackgroundSupportReturnStatement = "background-support--return-statement",
|
|
185
|
+
BackgroundSupportContinueStatement = "background-support--continue-statement",
|
|
186
|
+
BackgroundSupportBreakStatement = "background-support--break-statement",
|
|
187
|
+
BackgroundSuggestionReturnStatement = "background-suggestion--return-statement",
|
|
188
|
+
BackgroundSuggestionContinueStatement = "background-suggestion--continue-statement",
|
|
189
|
+
BackgroundSuggestionBreakStatement = "background-suggestion--break-statement",
|
|
190
|
+
BackgroundSupportSuggestionReturnStatement = "background-support-suggestion--return-statement",
|
|
191
|
+
BackgroundSupportSuggestionContinueStatement = "background-support-suggestion--continue-statement",
|
|
192
|
+
BackgroundSupportSuggestionBreakStatement = "background-support-suggestion--break-statement",
|
|
193
|
+
BackgroundDisabledReturnStatement = "background-disabled--return-statement",
|
|
194
|
+
BackgroundDisabledContinueStatement = "background-disabled--continue-statement",
|
|
195
|
+
BackgroundDisabledBreakStatement = "background-disabled--break-statement",
|
|
196
|
+
IconReturnStatement = "icon--return-statement",
|
|
197
|
+
IconContinueStatement = "icon--continue-statement",
|
|
198
|
+
IconBreakStatement = "icon--break-statement",
|
|
199
|
+
TextReturnStatement = "text--return-statement",
|
|
200
|
+
TextContinueStatement = "text--continue-statement",
|
|
201
|
+
TextBreakStatement = "text--break-statement",
|
|
202
|
+
BackgroundVariableDeclaration = "background--variable-declaration",
|
|
203
|
+
BackgroundVariableInstance = "background--variable-instance",
|
|
204
|
+
BackgroundSupportVariableDeclaration = "background-support--variable-declaration",
|
|
205
|
+
BackgroundSupportVariableInstance = "background-support--variable-instance",
|
|
206
|
+
BackgroundSuggestionVariableDeclaration = "background-suggestion--variable-declaration",
|
|
207
|
+
BackgroundSuggestionVariableInstance = "background-suggestion--variable-instance",
|
|
208
|
+
BackgroundSupportSuggestionVariableDeclaration = "background-support-suggestion--variable-declaration",
|
|
209
|
+
BackgroundSupportSuggestionVariableInstance = "background-support-suggestion--variable-instance",
|
|
210
|
+
BackgroundDisabledVariableDeclaration = "background-disabled--variable-declaration",
|
|
211
|
+
BackgroundDisabledVariableInstance = "background-disabled--variable-instance",
|
|
212
|
+
IconVariableDeclaration = "icon--variable-declaration",
|
|
213
|
+
IconVariableInstance = "icon--variable-instance",
|
|
214
|
+
TextVariableDeclaration = "text--variable-declaration",
|
|
215
|
+
TextVariableInstance = "text--variable-instance",
|
|
216
|
+
BackgroundLoop = "background--loop",
|
|
217
|
+
BackgroundSupportLoop = "background-support--loop",
|
|
218
|
+
BackgroundSuggestionLoop = "background-suggestion--loop",
|
|
219
|
+
BackgroundSupportSuggestionLoop = "background-support-suggestion--loop",
|
|
220
|
+
BackgroundDisabledLoop = "background-disabled--loop",
|
|
221
|
+
IconLoop = "icon--loop",
|
|
222
|
+
TextLoop = "text--loop",
|
|
223
|
+
BackgroundSearch = "background--search",
|
|
224
|
+
BackgroundSupportSearch = "background-support--search",
|
|
225
|
+
BackgroundSuggestionSearch = "background-suggestion--search",
|
|
226
|
+
BackgroundSupportSuggestionSearch = "background-support-suggestion--search",
|
|
227
|
+
BackgroundDisabledSearch = "background-disabled--search",
|
|
228
|
+
IconSearch = "icon--search",
|
|
229
|
+
TextSearch = "text--search",
|
|
230
|
+
StringValue = "string--value",
|
|
231
|
+
NumberValue = "number--value",
|
|
232
|
+
BooleanValue = "boolean--value",
|
|
233
|
+
ListValue = "list--value",
|
|
234
|
+
ObjectValue = "object--value"
|
|
235
|
+
}
|
|
236
|
+
export interface ICommandPart {
|
|
237
|
+
index: number;
|
|
238
|
+
type: 'command' | 'subcommand' | 'option' | 'argument' | 'text' | 'node';
|
|
239
|
+
label: string;
|
|
240
|
+
sublabel?: string;
|
|
241
|
+
value: string;
|
|
242
|
+
color?: string;
|
|
243
|
+
namedColor?: NamedColor | string;
|
|
244
|
+
icon?: string;
|
|
245
|
+
metadata?: {
|
|
246
|
+
entity?: any;
|
|
247
|
+
[key: string]: unknown;
|
|
248
|
+
};
|
|
249
|
+
}
|
|
90
250
|
export interface ICommandExecutionContext {
|
|
91
251
|
project?: any;
|
|
92
252
|
conversationId: string;
|
|
@@ -95,6 +255,18 @@ export interface ICommandExecutionContext {
|
|
|
95
255
|
option?: string;
|
|
96
256
|
args: Record<string, any>;
|
|
97
257
|
rawInput: string;
|
|
258
|
+
parts?: ICommandPart[];
|
|
259
|
+
}
|
|
260
|
+
export interface ICommandAutocompleteContext {
|
|
261
|
+
project?: any;
|
|
262
|
+
conversationId?: string;
|
|
263
|
+
command?: string;
|
|
264
|
+
subcommand?: string;
|
|
265
|
+
option?: string;
|
|
266
|
+
args?: Record<string, any>;
|
|
267
|
+
rawInput?: string;
|
|
268
|
+
parts?: ICommandPart[];
|
|
269
|
+
[key: string]: unknown;
|
|
98
270
|
}
|
|
99
271
|
export interface IBeforeSubmitResult {
|
|
100
272
|
canProceed: boolean;
|
|
@@ -109,17 +281,73 @@ export interface IBeforeSubmitResult {
|
|
|
109
281
|
export interface ICommandExecutionResult {
|
|
110
282
|
success: boolean;
|
|
111
283
|
message?: string;
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
284
|
+
payload?: {
|
|
285
|
+
command?: string;
|
|
286
|
+
parts?: ICommandPart[];
|
|
287
|
+
changeSetId?: string;
|
|
288
|
+
publicationId?: string;
|
|
289
|
+
createdEntityId?: string;
|
|
290
|
+
createdEntityName?: string;
|
|
291
|
+
icons?: Record<string, string>;
|
|
292
|
+
[key: string]: unknown;
|
|
293
|
+
};
|
|
294
|
+
metadata?: Record<string, unknown>;
|
|
117
295
|
}
|
|
118
296
|
export type CommandStage = 'normal' | 'command' | 'subcommand' | 'option' | 'args';
|
|
297
|
+
export type CommandStepType = 'subcommand' | 'option' | 'argument' | 'custom';
|
|
298
|
+
export interface ICommandOptionItem<TMetadata = any> {
|
|
299
|
+
id: string;
|
|
300
|
+
label: string;
|
|
301
|
+
sublabel?: string;
|
|
302
|
+
categoryTag?: string;
|
|
303
|
+
icon?: string;
|
|
304
|
+
color?: string;
|
|
305
|
+
namedColor?: NamedColor | string;
|
|
306
|
+
colorType?: string;
|
|
307
|
+
rendererId?: string;
|
|
308
|
+
metadata?: TMetadata;
|
|
309
|
+
rawEntity?: any;
|
|
310
|
+
}
|
|
311
|
+
export interface ICommandStep<TContext = any> {
|
|
312
|
+
id: string;
|
|
313
|
+
type: CommandStepType;
|
|
314
|
+
label: string;
|
|
315
|
+
placeholder?: string;
|
|
316
|
+
ghostHint?: string;
|
|
317
|
+
required?: boolean;
|
|
318
|
+
allowFreeText?: boolean;
|
|
319
|
+
getOptions?: (query: string, ctx: TContext) => Promise<ICommandOptionItem[]>;
|
|
320
|
+
resolvePart: (valueOrOption: any, ctx: TContext, partIndex: number) => ICommandPart;
|
|
321
|
+
isStepSatisfied?: (value: string | ICommandPart, ctx: TContext) => boolean;
|
|
322
|
+
}
|
|
323
|
+
export interface IComposableCommand<TContext = any> {
|
|
324
|
+
name: string;
|
|
325
|
+
label?: string;
|
|
326
|
+
description?: string;
|
|
327
|
+
category?: string;
|
|
328
|
+
icon?: string;
|
|
329
|
+
namedColor?: NamedColor | string;
|
|
330
|
+
subcommands?: Record<string, IComposableCommand<TContext>> | IComposableCommand<TContext>[];
|
|
331
|
+
steps?: ICommandStep<TContext>[];
|
|
332
|
+
beforeSubmit?: (ctx: ICommandExecutionContext) => Promise<IBeforeSubmitResult>;
|
|
333
|
+
execute?: (ctx: ICommandExecutionContext) => Promise<ICommandExecutionResult>;
|
|
334
|
+
getOptions?: (stage: CommandStage, query: string, ctx: ICommandAutocompleteContext) => Promise<any[]>;
|
|
335
|
+
}
|
|
336
|
+
export interface ICommandStepResolution<TContext = any> {
|
|
337
|
+
activeCommand: IComposableCommand<TContext> | ICommandExtension | null;
|
|
338
|
+
activeSubcommand?: IComposableCommand<TContext> | null;
|
|
339
|
+
currentStep: ICommandStep<TContext> | null;
|
|
340
|
+
stepIndex: number;
|
|
341
|
+
isComplete: boolean;
|
|
342
|
+
placeholder: string;
|
|
343
|
+
ghostHint?: string;
|
|
344
|
+
allowFreeText: boolean;
|
|
345
|
+
stage: CommandStage;
|
|
346
|
+
}
|
|
119
347
|
export interface ICommandExtensionModule extends IExtensionModuleCore {
|
|
120
348
|
beforeSubmit?: (ctx: ICommandExecutionContext) => Promise<IBeforeSubmitResult>;
|
|
121
349
|
execute: (ctx: ICommandExecutionContext) => Promise<ICommandExecutionResult>;
|
|
122
|
-
getOptions?: (stage: CommandStage, query: string, ctx:
|
|
350
|
+
getOptions?: (stage: CommandStage, query: string, ctx: ICommandAutocompleteContext) => Promise<any[]>;
|
|
123
351
|
}
|
|
124
352
|
export interface IExtensionModuleCore {
|
|
125
353
|
/** Called once on editor startup */
|
|
@@ -147,17 +375,17 @@ export declare class ExtensionState extends BaseExtensionState implements IExten
|
|
|
147
375
|
export interface IRegisteredExtension<T = any> extends IExecutionClient {
|
|
148
376
|
extensionsRegistry: ExtensionsRegistry;
|
|
149
377
|
manifest: ExtensionManifest;
|
|
150
|
-
command?: ICommandDefinition;
|
|
378
|
+
command?: ICommandDefinition | IComposableCommand;
|
|
151
379
|
module: ExtensionModule<T>;
|
|
152
380
|
state: IExtensionState;
|
|
153
381
|
}
|
|
154
382
|
export interface ICommandExtension extends IRegisteredExtension<ICommandExtensionModule> {
|
|
155
|
-
command: ICommandDefinition;
|
|
383
|
+
command: ICommandDefinition | IComposableCommand;
|
|
156
384
|
}
|
|
157
385
|
export declare class BaseRegisteredExtension<T = any> implements IRegisteredExtension<T> {
|
|
158
386
|
readonly extensionsRegistry: ExtensionsRegistry;
|
|
159
387
|
manifest: ExtensionManifest;
|
|
160
|
-
command?: ICommandDefinition;
|
|
388
|
+
command?: ICommandDefinition | IComposableCommand;
|
|
161
389
|
module: ExtensionModule<T>;
|
|
162
390
|
state: ExtensionState;
|
|
163
391
|
constructor(extensionsRegistry: ExtensionsRegistry, initialState?: Record<string, any>);
|