@microsoft/teamsfx-api 0.22.4-alpha.0fc621c97.0 → 0.22.4-alpha.13d1e618d.0
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/build/constants.d.ts +2 -10
- package/build/constants.d.ts.map +1 -1
- package/build/constants.js +2 -10
- package/build/constants.js.map +1 -1
- package/build/context.d.ts +9 -28
- package/build/context.d.ts.map +1 -1
- package/build/error.d.ts +4 -47
- package/build/error.d.ts.map +1 -1
- package/build/error.js +9 -139
- package/build/error.js.map +1 -1
- package/build/index.d.ts +4 -14
- package/build/index.d.ts.map +1 -1
- package/build/index.js +4 -15
- package/build/index.js.map +1 -1
- package/build/qm/index.d.ts +0 -1
- package/build/qm/index.d.ts.map +1 -1
- package/build/qm/index.js +0 -1
- package/build/qm/index.js.map +1 -1
- package/build/qm/question.d.ts +54 -7
- package/build/qm/question.d.ts.map +1 -1
- package/build/qm/question.js.map +1 -1
- package/build/qm/ui.d.ts +66 -8
- package/build/qm/ui.d.ts.map +1 -1
- package/build/qm/validation.d.ts +6 -1
- package/build/qm/validation.d.ts.map +1 -1
- package/build/qm/validation.js +11 -0
- package/build/qm/validation.js.map +1 -1
- package/build/types.d.ts +63 -130
- package/build/types.d.ts.map +1 -1
- package/build/types.js +8 -97
- package/build/types.js.map +1 -1
- package/build/utils/login.d.ts.map +1 -1
- package/build/utils/login.js +3 -3
- package/build/utils/login.js.map +1 -1
- package/build/utils/telemetry.d.ts.map +1 -1
- package/package.json +5 -4
- package/build/action.d.ts +0 -109
- package/build/action.d.ts.map +0 -1
- package/build/action.js +0 -5
- package/build/action.js.map +0 -1
- package/build/bicep.d.ts +0 -19
- package/build/bicep.d.ts.map +0 -1
- package/build/bicep.js +0 -5
- package/build/bicep.js.map +0 -1
- package/build/component.d.ts +0 -31
- package/build/component.d.ts.map +0 -1
- package/build/component.js +0 -3
- package/build/component.js.map +0 -1
- package/build/core.d.ts +0 -50
- package/build/core.d.ts.map +0 -1
- package/build/core.js +0 -5
- package/build/core.js.map +0 -1
- package/build/qm/visitor.d.ts +0 -15
- package/build/qm/visitor.d.ts.map +0 -1
- package/build/qm/visitor.js +0 -388
- package/build/qm/visitor.js.map +0 -1
- package/build/v2/index.d.ts +0 -2
- package/build/v2/index.d.ts.map +0 -1
- package/build/v2/index.js +0 -7
- package/build/v2/index.js.map +0 -1
- package/build/v2/types.d.ts +0 -54
- package/build/v2/types.d.ts.map +0 -1
- package/build/v2/types.js +0 -28
- package/build/v2/types.js.map +0 -1
- package/build/v3/AzureResourceStates.d.ts +0 -58
- package/build/v3/AzureResourceStates.d.ts.map +0 -1
- package/build/v3/AzureResourceStates.js +0 -3
- package/build/v3/AzureResourceStates.js.map +0 -1
- package/build/v3/core.d.ts +0 -15
- package/build/v3/core.d.ts.map +0 -1
- package/build/v3/core.js +0 -5
- package/build/v3/core.js.map +0 -1
- package/build/v3/index.d.ts +0 -7
- package/build/v3/index.d.ts.map +0 -1
- package/build/v3/index.js +0 -12
- package/build/v3/index.js.map +0 -1
- package/build/v3/plugins.d.ts +0 -12
- package/build/v3/plugins.d.ts.map +0 -1
- package/build/v3/plugins.js +0 -5
- package/build/v3/plugins.js.map +0 -1
- package/build/v3/resourceStates.d.ts +0 -66
- package/build/v3/resourceStates.d.ts.map +0 -1
- package/build/v3/resourceStates.js +0 -5
- package/build/v3/resourceStates.js.map +0 -1
- package/build/v3/solution.d.ts +0 -40
- package/build/v3/solution.d.ts.map +0 -1
- package/build/v3/solution.js +0 -5
- package/build/v3/solution.js.map +0 -1
- package/build/v3/types.d.ts +0 -28
- package/build/v3/types.d.ts.map +0 -1
- package/build/v3/types.js +0 -5
- package/build/v3/types.js.map +0 -1
- package/build/vscode.d.ts +0 -22
- package/build/vscode.d.ts.map +0 -1
- package/build/vscode.js +0 -5
- package/build/vscode.js.map +0 -1
package/build/qm/question.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Inputs, OptionItem } from "../types";
|
|
2
|
-
import {
|
|
2
|
+
import { InputTextConfig } from "./ui";
|
|
3
|
+
import { ConditionFunc, FuncValidation, StringArrayValidation, StringValidation, ValidationSchema } from "./validation";
|
|
3
4
|
export interface FunctionRouter {
|
|
4
5
|
namespace: string;
|
|
5
6
|
method: string;
|
|
@@ -75,7 +76,7 @@ export interface UserInputQuestion extends BaseQuestion {
|
|
|
75
76
|
/**
|
|
76
77
|
* question type
|
|
77
78
|
*/
|
|
78
|
-
type: "singleSelect" | "multiSelect" | "singleFile" | "multiFile" | "folder" | "text";
|
|
79
|
+
type: "singleSelect" | "multiSelect" | "singleFile" | "multiFile" | "folder" | "text" | "singleFileOrText";
|
|
79
80
|
/**
|
|
80
81
|
* title is required for human input question
|
|
81
82
|
*/
|
|
@@ -204,6 +205,10 @@ export interface TextInputQuestion extends UserInputQuestion {
|
|
|
204
205
|
* validation schema, which can be a dynamic function closure
|
|
205
206
|
*/
|
|
206
207
|
validation?: StringValidation | FuncValidation<string>;
|
|
208
|
+
/**
|
|
209
|
+
* validation when user confirms the input.
|
|
210
|
+
*/
|
|
211
|
+
additionalValidationOnAccept?: StringValidation | FuncValidation<string>;
|
|
207
212
|
}
|
|
208
213
|
/**
|
|
209
214
|
* Definition of single file selection
|
|
@@ -222,6 +227,20 @@ export interface SingleFileQuestion extends UserInputQuestion {
|
|
|
222
227
|
* validation function
|
|
223
228
|
*/
|
|
224
229
|
validation?: FuncValidation<string>;
|
|
230
|
+
/**
|
|
231
|
+
* This will only take effect in VSC.
|
|
232
|
+
* A set of file filters that are used by the dialog. Each entry is a human-readable label,
|
|
233
|
+
* like "TypeScript", and an array of extensions, e.g.
|
|
234
|
+
* ```ts
|
|
235
|
+
* {
|
|
236
|
+
* 'Images': ['png', 'jpg']
|
|
237
|
+
* 'TypeScript': ['ts', 'tsx']
|
|
238
|
+
* }
|
|
239
|
+
* ```
|
|
240
|
+
*/
|
|
241
|
+
filters?: {
|
|
242
|
+
[name: string]: string[];
|
|
243
|
+
};
|
|
225
244
|
}
|
|
226
245
|
export interface MultiFileQuestion extends UserInputQuestion {
|
|
227
246
|
type: "multiFile";
|
|
@@ -264,6 +283,31 @@ export interface FuncQuestion extends BaseQuestion {
|
|
|
264
283
|
*/
|
|
265
284
|
func: LocalFunc<any>;
|
|
266
285
|
}
|
|
286
|
+
export interface SingleFileOrInputQuestion extends UserInputQuestion {
|
|
287
|
+
type: "singleFileOrText";
|
|
288
|
+
/**
|
|
289
|
+
* An item shown in the list in VSC that user can click to input text.
|
|
290
|
+
*/
|
|
291
|
+
inputOptionItem: OptionItem;
|
|
292
|
+
/**
|
|
293
|
+
* Config for the input box.
|
|
294
|
+
*/
|
|
295
|
+
inputBoxConfig: InputTextConfig;
|
|
296
|
+
/**
|
|
297
|
+
* This will only take effect in VSC.
|
|
298
|
+
* A set of file filters that are used by the dialog. Each entry is a human-readable label,
|
|
299
|
+
* like "TypeScript", and an array of extensions, e.g.
|
|
300
|
+
* ```ts
|
|
301
|
+
* {
|
|
302
|
+
* 'Images': ['png', 'jpg']
|
|
303
|
+
* 'TypeScript': ['ts', 'tsx']
|
|
304
|
+
* }
|
|
305
|
+
* ```
|
|
306
|
+
*/
|
|
307
|
+
filters?: {
|
|
308
|
+
[name: string]: string[];
|
|
309
|
+
};
|
|
310
|
+
}
|
|
267
311
|
/**
|
|
268
312
|
* `Group` is a virtual node in the question tree that wraps a group of questions, which share the same activation condition in this group.
|
|
269
313
|
*/
|
|
@@ -271,18 +315,16 @@ export interface Group {
|
|
|
271
315
|
type: "group";
|
|
272
316
|
name?: string;
|
|
273
317
|
}
|
|
274
|
-
export declare type Question = SingleSelectQuestion | MultiSelectQuestion | TextInputQuestion | SingleFileQuestion | MultiFileQuestion | FolderQuestion | FuncQuestion | SingleFileQuestion;
|
|
318
|
+
export declare type Question = SingleSelectQuestion | MultiSelectQuestion | TextInputQuestion | SingleFileQuestion | MultiFileQuestion | FolderQuestion | FuncQuestion | SingleFileQuestion | SingleFileOrInputQuestion;
|
|
275
319
|
/**
|
|
276
320
|
* QTreeNode is the tree node data structure, which have three main properties:
|
|
277
321
|
* - data: data is either a group or question. Questions can be organized into a group, which has the same trigger condition.
|
|
278
322
|
* - condition: trigger condition for this node to be activated;
|
|
279
323
|
* - children: child questions that will be activated according their trigger condition.
|
|
280
324
|
*/
|
|
281
|
-
export declare class QTreeNode {
|
|
325
|
+
export declare class QTreeNode implements IQTreeNode {
|
|
282
326
|
data: Question | Group;
|
|
283
|
-
condition?:
|
|
284
|
-
target?: string;
|
|
285
|
-
};
|
|
327
|
+
condition?: StringValidation | StringArrayValidation | ConditionFunc;
|
|
286
328
|
children?: QTreeNode[];
|
|
287
329
|
addChild(node: QTreeNode): QTreeNode;
|
|
288
330
|
validate(): boolean;
|
|
@@ -292,4 +334,9 @@ export declare class QTreeNode {
|
|
|
292
334
|
trim(): QTreeNode | undefined;
|
|
293
335
|
constructor(data: Question | Group);
|
|
294
336
|
}
|
|
337
|
+
export interface IQTreeNode {
|
|
338
|
+
data: Question | Group;
|
|
339
|
+
condition?: StringValidation | StringArrayValidation | ConditionFunc;
|
|
340
|
+
children?: IQTreeNode[];
|
|
341
|
+
}
|
|
295
342
|
//# sourceMappingURL=question.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"question.d.ts","sourceRoot":"","sources":["../../src/qm/question.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,IAAK,SAAQ,cAAc;IAC1C,MAAM,CAAC,EAAE,GAAG,CAAC;CACd;AAED;;GAEG;AACH,oBAAY,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAE9D,oBAAY,qBAAqB,GAAG,CAClC,kBAAkB,EAAE,GAAG,CAAC,MAAM,CAAC,EAC/B,mBAAmB,EAAE,GAAG,CAAC,MAAM,CAAC,KAC7B,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AAE1B;;;;GAIG;AACH,oBAAY,aAAa,GAAG,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;AAEpD;;GAEG;AACH,oBAAY,cAAc,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAE/C;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;;;;;OAMG;IACH,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAChE;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,YAAY;IACrD;;OAEG;IACH,IAAI,
|
|
1
|
+
{"version":3,"file":"question.d.ts","sourceRoot":"","sources":["../../src/qm/question.ts"],"names":[],"mappings":"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"}
|
package/build/qm/question.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"question.js","sourceRoot":"","sources":["../../src/qm/question.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;
|
|
1
|
+
{"version":3,"file":"question.js","sourceRoot":"","sources":["../../src/qm/question.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AA0XlC;;;;;GAKG;AACH,MAAa,SAAS;IA2CpB,YAAY,IAAsB;QAChC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAzCD,QAAQ,CAAC,IAAe;QACtB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;SACpB;QACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,QAAQ;QACN,kCAAkC;QAClC,iCAAiC;QACjC,+BAA+B;QAC/B,yGAAyG;QACzG,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAI;QACF,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,MAAM,WAAW,GAAgB,EAAE,CAAC;YACpC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAChC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC5B,IAAI,OAAO;oBAAE,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACxC;YACD,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC;SAC7B;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;YAC9B,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,SAAS,CAAC;YACnE,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC/B,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC,EAAE;oBACxC,KAAK,CAAC,SAAS,KAAf,KAAK,CAAC,SAAS,GAAK,IAAI,CAAC,SAAS,EAAC;oBACnC,OAAO,KAAK,CAAC;iBACd;aACF;SACF;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CAIF;AA9CD,8BA8CC"}
|
package/build/qm/ui.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Result } from "neverthrow";
|
|
2
|
-
import { LocalFunc } from ".";
|
|
2
|
+
import { LocalFunc, ValidateFunc } from ".";
|
|
3
3
|
import { FxError } from "../error";
|
|
4
4
|
import { OnSelectionChangeFunc, StaticOptions } from "../qm/question";
|
|
5
5
|
import { Inputs, OptionItem } from "../types";
|
|
@@ -36,7 +36,7 @@ export interface UIConfig<T> {
|
|
|
36
36
|
/**
|
|
37
37
|
* default input value
|
|
38
38
|
*/
|
|
39
|
-
default?: T;
|
|
39
|
+
default?: T | (() => Promise<T>);
|
|
40
40
|
/**
|
|
41
41
|
* A function that will be called to validate input and to give a hint to the user.
|
|
42
42
|
*
|
|
@@ -63,23 +63,29 @@ export interface UIConfig<T> {
|
|
|
63
63
|
*/
|
|
64
64
|
export interface SingleSelectConfig extends UIConfig<string> {
|
|
65
65
|
/**
|
|
66
|
-
* option array
|
|
66
|
+
* option array or a callback function which returns option array
|
|
67
67
|
*/
|
|
68
|
-
options: StaticOptions;
|
|
68
|
+
options: StaticOptions | (() => Promise<StaticOptions>);
|
|
69
|
+
default?: string | (() => Promise<string>);
|
|
69
70
|
/**
|
|
70
71
|
* This config only works for option items with `OptionItem[]` type. If `returnObject` is true, the answer value is an `OptionItem` object; otherwise, the answer value is the `id` string of the `OptionItem`.
|
|
71
72
|
* In case of option items with `string[]` type, whether `returnObject` is true or false, the returned answer value is always a string.
|
|
72
73
|
*/
|
|
73
74
|
returnObject?: boolean;
|
|
75
|
+
/**
|
|
76
|
+
* whether skip selection if there is only one option, default is false
|
|
77
|
+
*/
|
|
78
|
+
skipSingleOption?: boolean;
|
|
74
79
|
}
|
|
75
80
|
/**
|
|
76
81
|
* multiple selection UI config
|
|
77
82
|
*/
|
|
78
83
|
export interface MultiSelectConfig extends UIConfig<string[]> {
|
|
79
84
|
/**
|
|
80
|
-
* option array
|
|
85
|
+
* option array or a callback function which returns option array
|
|
81
86
|
*/
|
|
82
|
-
options: StaticOptions;
|
|
87
|
+
options: StaticOptions | (() => Promise<StaticOptions>);
|
|
88
|
+
default?: string[] | (() => Promise<string[]>);
|
|
83
89
|
/**
|
|
84
90
|
* This config only works for option items with `OptionItem[]` type. If `returnObject` is true, the answer value is an array of `OptionItem` objects; otherwise, the answer value is an array of `id` strings.
|
|
85
91
|
* In case of option items with `string[]` type, whether `returnObject` is true or false, the returned answer value is always a string array.
|
|
@@ -92,6 +98,10 @@ export interface MultiSelectConfig extends UIConfig<string[]> {
|
|
|
92
98
|
* @returns the final selected option ids
|
|
93
99
|
*/
|
|
94
100
|
onDidChangeSelection?: OnSelectionChangeFunc;
|
|
101
|
+
/**
|
|
102
|
+
* whether skip selection if there is only one option, default is false
|
|
103
|
+
*/
|
|
104
|
+
skipSingleOption?: boolean;
|
|
95
105
|
}
|
|
96
106
|
/**
|
|
97
107
|
* text input UI config
|
|
@@ -101,12 +111,23 @@ export interface InputTextConfig extends UIConfig<string> {
|
|
|
101
111
|
* If the input value should be hidden. Defaults to false.
|
|
102
112
|
*/
|
|
103
113
|
password?: boolean;
|
|
114
|
+
default?: string | (() => Promise<string>);
|
|
115
|
+
/**
|
|
116
|
+
* A function that will be called to validate the input that user accepted.
|
|
117
|
+
*
|
|
118
|
+
* @param input The current value of the input to be validated.
|
|
119
|
+
* @param inputs The current values of all inputs.
|
|
120
|
+
* @return A human-readable string which is presented as diagnostic message.
|
|
121
|
+
* Return `undefined` when 'value' is valid.
|
|
122
|
+
*/
|
|
123
|
+
additionalValidationOnAccept?: ValidateFunc<string>;
|
|
104
124
|
}
|
|
105
125
|
/**
|
|
106
126
|
* single file selector config
|
|
107
127
|
*/
|
|
108
128
|
export declare type SelectFileConfig = UIConfig<string> & {
|
|
109
129
|
/**
|
|
130
|
+
* This will only take effect in VSC.
|
|
110
131
|
* A set of file filters that are used by the dialog. Each entry is a human-readable label,
|
|
111
132
|
* like "TypeScript", and an array of extensions, e.g.
|
|
112
133
|
* ```ts
|
|
@@ -119,6 +140,7 @@ export declare type SelectFileConfig = UIConfig<string> & {
|
|
|
119
140
|
filters?: {
|
|
120
141
|
[name: string]: string[];
|
|
121
142
|
};
|
|
143
|
+
default?: string | (() => Promise<string>);
|
|
122
144
|
/**
|
|
123
145
|
* Possible files that will be listed for users to select.
|
|
124
146
|
* The id cannot be "default" or "browse" as they are reserved for default and browse options.
|
|
@@ -134,6 +156,7 @@ export declare type SelectFileConfig = UIConfig<string> & {
|
|
|
134
156
|
*/
|
|
135
157
|
export declare type SelectFilesConfig = UIConfig<string[]> & {
|
|
136
158
|
/**
|
|
159
|
+
* This will only take effect in VSC.
|
|
137
160
|
* A set of file filters that are used by the dialog. Each entry is a human-readable label,
|
|
138
161
|
* like "TypeScript", and an array of extensions, e.g.
|
|
139
162
|
* ```ts
|
|
@@ -146,11 +169,14 @@ export declare type SelectFilesConfig = UIConfig<string[]> & {
|
|
|
146
169
|
filters?: {
|
|
147
170
|
[name: string]: string[];
|
|
148
171
|
};
|
|
172
|
+
default?: string[] | (() => Promise<string[]>);
|
|
149
173
|
};
|
|
150
174
|
/**
|
|
151
175
|
* folder selector config
|
|
152
176
|
*/
|
|
153
|
-
export declare type SelectFolderConfig = UIConfig<string
|
|
177
|
+
export declare type SelectFolderConfig = UIConfig<string> & {
|
|
178
|
+
default?: string | (() => Promise<string>);
|
|
179
|
+
};
|
|
154
180
|
/**
|
|
155
181
|
* func execution config
|
|
156
182
|
*/
|
|
@@ -158,6 +184,30 @@ export interface ExecuteFuncConfig extends UIConfig<string> {
|
|
|
158
184
|
func: LocalFunc<any>;
|
|
159
185
|
inputs: Inputs;
|
|
160
186
|
}
|
|
187
|
+
export interface SingleFileOrInputConfig extends UIConfig<string> {
|
|
188
|
+
/**
|
|
189
|
+
* An item shown in the list in VSC that user can click to input text.
|
|
190
|
+
*/
|
|
191
|
+
inputOptionItem: OptionItem;
|
|
192
|
+
/**
|
|
193
|
+
* Config for the input box.
|
|
194
|
+
*/
|
|
195
|
+
inputBoxConfig: InputTextConfig;
|
|
196
|
+
/**
|
|
197
|
+
* This will only take effect in VSC.
|
|
198
|
+
* A set of file filters that are used by the dialog. Each entry is a human-readable label,
|
|
199
|
+
* like "TypeScript", and an array of extensions, e.g.
|
|
200
|
+
* ```ts
|
|
201
|
+
* {
|
|
202
|
+
* 'Images': ['png', 'jpg']
|
|
203
|
+
* 'TypeScript': ['ts', 'tsx']
|
|
204
|
+
* }
|
|
205
|
+
* ```
|
|
206
|
+
*/
|
|
207
|
+
filters?: {
|
|
208
|
+
[name: string]: string[];
|
|
209
|
+
};
|
|
210
|
+
}
|
|
161
211
|
/**
|
|
162
212
|
* a wrapper of user input result
|
|
163
213
|
*/
|
|
@@ -289,6 +339,14 @@ export interface UserInteraction {
|
|
|
289
339
|
[k: string]: string;
|
|
290
340
|
};
|
|
291
341
|
}): Promise<Result<string, FxError>>;
|
|
342
|
+
/**
|
|
343
|
+
* In VSC, it shows two options to user, one will open a dialog to the user which allows to select a single file, another one will show an input box asking to enter a value.
|
|
344
|
+
* If CLI, it will directly asks user to enter a value.
|
|
345
|
+
* @param config config to select local file or enter a value
|
|
346
|
+
* @returns A promise that resolves to the local file path or the value entered by user or FxError
|
|
347
|
+
* @throws FxError
|
|
348
|
+
*/
|
|
349
|
+
selectFileOrInput?(config: SingleFileOrInputConfig): Promise<Result<InputResult<string>, FxError>>;
|
|
292
350
|
}
|
|
293
351
|
export interface IProgressHandler {
|
|
294
352
|
/**
|
|
@@ -308,6 +366,6 @@ export interface IProgressHandler {
|
|
|
308
366
|
* End the progress bar and tell if success. After calling it, the progress bar will disappear. This handler
|
|
309
367
|
* can be reused after calling end().
|
|
310
368
|
*/
|
|
311
|
-
end: (success: boolean) => Promise<void>;
|
|
369
|
+
end: (success: boolean, hideAfterFinish?: boolean) => Promise<void>;
|
|
312
370
|
}
|
|
313
371
|
//# sourceMappingURL=ui.d.ts.map
|
package/build/qm/ui.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/qm/ui.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/qm/ui.ts"],"names":[],"mappings":"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"}
|
package/build/qm/validation.d.ts
CHANGED
|
@@ -54,6 +54,10 @@ export interface StringValidation extends StaticValidation {
|
|
|
54
54
|
* An instance validates successfully against this keyword if its value is not equal to the value of the keyword.
|
|
55
55
|
*/
|
|
56
56
|
notEquals?: string;
|
|
57
|
+
/**
|
|
58
|
+
* A string instance validates successfully against this keyword if its value does not equal to any of the elements in this keyword's array value.
|
|
59
|
+
*/
|
|
60
|
+
excludesEnum?: string[];
|
|
57
61
|
}
|
|
58
62
|
/**
|
|
59
63
|
* Validation for String Arrays
|
|
@@ -111,6 +115,7 @@ export interface FuncValidation<T extends string | string[] | OptionItem | Optio
|
|
|
111
115
|
*/
|
|
112
116
|
validFunc: ValidateFunc<T>;
|
|
113
117
|
}
|
|
118
|
+
export declare type ConditionFunc = (inputs: Inputs) => boolean | Promise<boolean>;
|
|
114
119
|
/**
|
|
115
120
|
* Definition of validation schema, which is a union of `StringValidation`, `StringArrayValidation` and `FuncValidation<any>`
|
|
116
121
|
*/
|
|
@@ -130,5 +135,5 @@ export declare function getValidationFunction<T extends string | string[] | unde
|
|
|
130
135
|
* @returns A human-readable string which is presented as diagnostic message.
|
|
131
136
|
* Return `undefined` when 'value' is valid.
|
|
132
137
|
*/
|
|
133
|
-
export declare function validate<T extends string | string[] | OptionItem | OptionItem[] | undefined>(validSchema: ValidationSchema, value: T, inputs?: Inputs): Promise<string | undefined>;
|
|
138
|
+
export declare function validate<T extends string | string[] | OptionItem | OptionItem[] | undefined>(validSchema: ValidationSchema | ConditionFunc, value: T, inputs?: Inputs): Promise<string | undefined>;
|
|
134
139
|
//# sourceMappingURL=validation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/qm/validation.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE9C,oBAAY,YAAY,CAAC,CAAC,IAAI,CAC5B,KAAK,EAAE,CAAC,EACR,MAAM,CAAC,EAAE,MAAM,KACZ,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;AAEtD;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/qm/validation.ts"],"names":[],"mappings":"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"}
|
package/build/qm/validation.js
CHANGED
|
@@ -33,6 +33,12 @@ async function validate(validSchema, value, inputs) {
|
|
|
33
33
|
const res = await funcValidation.validFunc(value, inputs);
|
|
34
34
|
return res;
|
|
35
35
|
}
|
|
36
|
+
else if (typeof funcValidation === "function") {
|
|
37
|
+
const res = await funcValidation(inputs);
|
|
38
|
+
if (res)
|
|
39
|
+
return undefined;
|
|
40
|
+
return "condition function is not met.";
|
|
41
|
+
}
|
|
36
42
|
}
|
|
37
43
|
if (!value) {
|
|
38
44
|
if (validSchema.required === true)
|
|
@@ -82,6 +88,11 @@ async function validate(validSchema, value, inputs) {
|
|
|
82
88
|
return `'${strToValidate}' does not meet notEquals:'${stringValidation.notEquals}'`;
|
|
83
89
|
}
|
|
84
90
|
}
|
|
91
|
+
if (stringValidation.excludesEnum && typeof strToValidate === "string") {
|
|
92
|
+
if (stringValidation.excludesEnum.includes(strToValidate)) {
|
|
93
|
+
return `'${strToValidate}' does not meet excludesEnum:'${stringValidation.excludesEnum}'`;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
85
96
|
}
|
|
86
97
|
}
|
|
87
98
|
//StringArrayValidation
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/qm/validation.ts"],"names":[],"mappings":";;;;AAAA,uCAAuC;AACvC,kCAAkC;AAClC,+DAAyC;
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/qm/validation.ts"],"names":[],"mappings":"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"}
|
package/build/types.d.ts
CHANGED
|
@@ -1,15 +1,5 @@
|
|
|
1
|
+
import { IBot, IComposeExtension, IConfigurableTab, IStaticTab, IWebApplicationInfo } from "@microsoft/teams-manifest";
|
|
1
2
|
import { Platform, Stage, VsCodeEnv } from "./constants";
|
|
2
|
-
import { TokenProvider } from "./utils/login";
|
|
3
|
-
import { Context } from "./v2/types";
|
|
4
|
-
import { AppManifestProvider } from "./v3/plugins";
|
|
5
|
-
import { EnvInfoV3 } from "./v3/types";
|
|
6
|
-
export declare type Json = Record<string, any>;
|
|
7
|
-
export declare type ConfigValue = any;
|
|
8
|
-
export declare type PluginIdentity = string;
|
|
9
|
-
export declare type PluginConfig = ConfigMap;
|
|
10
|
-
export declare type ReadonlyPluginConfig = ReadonlyMap<string, ConfigValue>;
|
|
11
|
-
export declare type SolutionConfig = Map<PluginIdentity, PluginConfig>;
|
|
12
|
-
export declare type ReadonlySolutionConfig = ReadonlyMap<PluginIdentity, ReadonlyPluginConfig>;
|
|
13
3
|
/**
|
|
14
4
|
* Definition of option item in single selection or multiple selection
|
|
15
5
|
*/
|
|
@@ -55,32 +45,8 @@ export interface OptionItem {
|
|
|
55
45
|
command: string;
|
|
56
46
|
}[];
|
|
57
47
|
}
|
|
58
|
-
export declare class ConfigMap extends Map<string, ConfigValue> {
|
|
59
|
-
getString(k: string, defaultValue?: string): string | undefined;
|
|
60
|
-
getBoolean(k: string, defaultValue?: boolean): boolean | undefined;
|
|
61
|
-
getNumber(k: string, defaultValue?: number): number | undefined;
|
|
62
|
-
getStringArray(k: string, defaultValue?: string[]): string[] | undefined;
|
|
63
|
-
getNumberArray(k: string, defaultValue?: number[]): number[] | undefined;
|
|
64
|
-
getBooleanArray(k: string, defaultValue?: boolean[]): boolean[] | undefined;
|
|
65
|
-
getOptionItem(k: string, defaultValue?: OptionItem): OptionItem | undefined;
|
|
66
|
-
getOptionItemArray(k: string, defaultValue?: OptionItem[]): OptionItem[] | undefined;
|
|
67
|
-
toJSON(): Json;
|
|
68
|
-
static fromJSON(obj?: Json): ConfigMap | undefined;
|
|
69
|
-
constructor(entries?: readonly (readonly [string, ConfigValue])[] | null);
|
|
70
|
-
}
|
|
71
|
-
export declare function mergeConfigMap(lhs?: ConfigMap, rhs?: ConfigMap): ConfigMap | undefined;
|
|
72
48
|
export declare type Void = {};
|
|
73
49
|
export declare const Void: {};
|
|
74
|
-
export declare type ResourceTemplate = Record<string, ConfigValue>;
|
|
75
|
-
export declare type ResourceTemplates = {
|
|
76
|
-
[k: string]: ResourceTemplate | undefined;
|
|
77
|
-
};
|
|
78
|
-
export declare type ResourceConfig = ResourceTemplate;
|
|
79
|
-
export declare type ResourceConfigs = ResourceTemplates;
|
|
80
|
-
export declare type ReadonlyResourceConfig = Readonly<ResourceConfig>;
|
|
81
|
-
export declare type ReadonlyResourceConfigs = Readonly<{
|
|
82
|
-
[k: string]: ReadonlyResourceConfig | undefined;
|
|
83
|
-
}>;
|
|
84
50
|
/**
|
|
85
51
|
* environment meta data
|
|
86
52
|
*/
|
|
@@ -89,59 +55,7 @@ export interface EnvMeta {
|
|
|
89
55
|
local: boolean;
|
|
90
56
|
sideloading: boolean;
|
|
91
57
|
}
|
|
92
|
-
|
|
93
|
-
* project static settings
|
|
94
|
-
*/
|
|
95
|
-
export interface ProjectSettings {
|
|
96
|
-
appName?: string;
|
|
97
|
-
version?: string;
|
|
98
|
-
projectId: string;
|
|
99
|
-
programmingLanguage?: string;
|
|
100
|
-
defaultFunctionName?: string;
|
|
101
|
-
solutionSettings?: SolutionSettings;
|
|
102
|
-
isFromSample?: boolean;
|
|
103
|
-
isM365?: boolean;
|
|
104
|
-
/**
|
|
105
|
-
* pluginSettings is used for plugin settings irrelevant to environments
|
|
106
|
-
*/
|
|
107
|
-
pluginSettings?: Json;
|
|
108
|
-
}
|
|
109
|
-
/**
|
|
110
|
-
* solution settings
|
|
111
|
-
*/
|
|
112
|
-
export interface SolutionSettings extends Json {
|
|
113
|
-
name: string;
|
|
114
|
-
/**
|
|
115
|
-
* solution settings schema version
|
|
116
|
-
*/
|
|
117
|
-
version?: string;
|
|
118
|
-
}
|
|
119
|
-
export interface AzureSolutionSettings extends SolutionSettings {
|
|
120
|
-
hostType: string;
|
|
121
|
-
capabilities: string[];
|
|
122
|
-
azureResources: string[];
|
|
123
|
-
activeResourcePlugins: string[];
|
|
124
|
-
}
|
|
125
|
-
/**
|
|
126
|
-
* local debug settings
|
|
127
|
-
*/
|
|
128
|
-
export interface LocalSettings {
|
|
129
|
-
teamsApp?: ConfigMap;
|
|
130
|
-
auth?: ConfigMap;
|
|
131
|
-
frontend?: ConfigMap;
|
|
132
|
-
backend?: ConfigMap;
|
|
133
|
-
bot?: ConfigMap;
|
|
134
|
-
}
|
|
135
|
-
/**
|
|
136
|
-
* project dynamic states
|
|
137
|
-
*/
|
|
138
|
-
export interface ProjectStates {
|
|
139
|
-
solution: Record<string, ConfigValue>;
|
|
140
|
-
resources: {
|
|
141
|
-
[k: string]: Record<string, ConfigValue>;
|
|
142
|
-
};
|
|
143
|
-
}
|
|
144
|
-
export interface Inputs extends Json {
|
|
58
|
+
export interface Inputs extends Record<string, any> {
|
|
145
59
|
projectPath?: string;
|
|
146
60
|
targetEnvName?: string;
|
|
147
61
|
sourceEnvName?: string;
|
|
@@ -160,48 +74,18 @@ export interface Inputs extends Json {
|
|
|
160
74
|
isM365?: boolean;
|
|
161
75
|
inProductDoc?: boolean;
|
|
162
76
|
teamsAppFromTdp?: any;
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
name: string;
|
|
176
|
-
hosting?: string;
|
|
177
|
-
code?: string;
|
|
178
|
-
deployType?: "folder" | "zip";
|
|
179
|
-
language?: string;
|
|
180
|
-
folder?: string;
|
|
181
|
-
artifactFolder?: string;
|
|
182
|
-
build?: boolean;
|
|
183
|
-
provision?: boolean;
|
|
184
|
-
deploy?: boolean;
|
|
185
|
-
connections?: string[];
|
|
186
|
-
sso?: boolean;
|
|
187
|
-
}
|
|
188
|
-
export interface ProjectSettingsV3 extends ProjectSettings {
|
|
189
|
-
components: Component[];
|
|
190
|
-
}
|
|
191
|
-
export interface ContextV3 extends Context {
|
|
192
|
-
manifestProvider: AppManifestProvider;
|
|
193
|
-
projectSetting: ProjectSettingsV3;
|
|
194
|
-
envInfo?: EnvInfoV3;
|
|
195
|
-
tokenProvider?: TokenProvider;
|
|
196
|
-
projectPath?: string;
|
|
197
|
-
templateVariables?: {
|
|
198
|
-
[key: string]: string;
|
|
199
|
-
};
|
|
200
|
-
}
|
|
201
|
-
export interface ResourceContextV3 extends ContextV3 {
|
|
202
|
-
envInfo: EnvInfoV3;
|
|
203
|
-
tokenProvider: TokenProvider;
|
|
204
|
-
}
|
|
77
|
+
openAIPluginManifest?: OpenAIPluginManifest;
|
|
78
|
+
supportedApisFromApiSpec?: ApiOperation[];
|
|
79
|
+
globalYeomanPackageVersion?: string;
|
|
80
|
+
globalSpfxPackageVersion?: string;
|
|
81
|
+
latestSpfxPackageVersion?: string;
|
|
82
|
+
}
|
|
83
|
+
export declare type InputsWithProjectPath = Inputs & {
|
|
84
|
+
projectPath: string;
|
|
85
|
+
};
|
|
86
|
+
export declare type DeepReadonly<T> = {
|
|
87
|
+
readonly [P in keyof T]: DeepReadonly<T[P]>;
|
|
88
|
+
};
|
|
205
89
|
export declare type MaybePromise<T> = T | Promise<T>;
|
|
206
90
|
/**
|
|
207
91
|
* simplified tooling settings for v3
|
|
@@ -210,4 +94,53 @@ export interface Settings {
|
|
|
210
94
|
version: string;
|
|
211
95
|
trackingId: string;
|
|
212
96
|
}
|
|
97
|
+
export declare type ManifestCapability = {
|
|
98
|
+
name: "staticTab";
|
|
99
|
+
snippet?: IStaticTab;
|
|
100
|
+
existingApp?: boolean;
|
|
101
|
+
} | {
|
|
102
|
+
name: "configurableTab";
|
|
103
|
+
snippet?: IConfigurableTab;
|
|
104
|
+
existingApp?: boolean;
|
|
105
|
+
} | {
|
|
106
|
+
name: "Bot";
|
|
107
|
+
snippet?: IBot;
|
|
108
|
+
existingApp?: boolean;
|
|
109
|
+
} | {
|
|
110
|
+
name: "MessageExtension";
|
|
111
|
+
snippet?: IComposeExtension;
|
|
112
|
+
existingApp?: boolean;
|
|
113
|
+
} | {
|
|
114
|
+
name: "WebApplicationInfo";
|
|
115
|
+
snippet?: IWebApplicationInfo;
|
|
116
|
+
existingApp?: boolean;
|
|
117
|
+
};
|
|
118
|
+
export declare enum OpenAIManifestAuthType {
|
|
119
|
+
None = "none",
|
|
120
|
+
UserHttp = "user_http",
|
|
121
|
+
ServiceHttp = "service_http",
|
|
122
|
+
OAuth = "oauth"
|
|
123
|
+
}
|
|
124
|
+
export interface OpenAIPluginManifest {
|
|
125
|
+
schema_version: string;
|
|
126
|
+
name_for_human: string;
|
|
127
|
+
name_for_model: string;
|
|
128
|
+
description_for_human: string;
|
|
129
|
+
description_for_model: string;
|
|
130
|
+
auth: {
|
|
131
|
+
type: OpenAIManifestAuthType;
|
|
132
|
+
};
|
|
133
|
+
api: {
|
|
134
|
+
type: string;
|
|
135
|
+
url: string;
|
|
136
|
+
};
|
|
137
|
+
logo_url: string;
|
|
138
|
+
contact_email: string;
|
|
139
|
+
legal_info_url: string;
|
|
140
|
+
}
|
|
141
|
+
export interface ApiOperation {
|
|
142
|
+
id: string;
|
|
143
|
+
label: string;
|
|
144
|
+
groupName: string;
|
|
145
|
+
}
|
|
213
146
|
//# sourceMappingURL=types.d.ts.map
|