@microsoft/teamsfx-api 0.22.3 → 0.22.4-alpha.06f5ef6da.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.
Files changed (123) hide show
  1. package/build/cli.d.ts +203 -0
  2. package/build/cli.d.ts.map +1 -0
  3. package/build/{v3/core.js → cli.js} +1 -1
  4. package/build/cli.js.map +1 -0
  5. package/build/constants.d.ts +4 -12
  6. package/build/constants.d.ts.map +1 -1
  7. package/build/constants.js +4 -12
  8. package/build/constants.js.map +1 -1
  9. package/build/context.d.ts +9 -28
  10. package/build/context.d.ts.map +1 -1
  11. package/build/error.d.ts +4 -47
  12. package/build/error.d.ts.map +1 -1
  13. package/build/error.js +9 -139
  14. package/build/error.js.map +1 -1
  15. package/build/index.d.ts +5 -16
  16. package/build/index.d.ts.map +1 -1
  17. package/build/index.js +5 -17
  18. package/build/index.js.map +1 -1
  19. package/build/qm/index.d.ts +0 -1
  20. package/build/qm/index.d.ts.map +1 -1
  21. package/build/qm/index.js +0 -1
  22. package/build/qm/index.js.map +1 -1
  23. package/build/qm/question.d.ts +134 -26
  24. package/build/qm/question.d.ts.map +1 -1
  25. package/build/qm/question.js +0 -53
  26. package/build/qm/question.js.map +1 -1
  27. package/build/qm/ui.d.ts +72 -99
  28. package/build/qm/ui.d.ts.map +1 -1
  29. package/build/qm/ui.js +0 -86
  30. package/build/qm/ui.js.map +1 -1
  31. package/build/qm/validation.d.ts +7 -18
  32. package/build/qm/validation.d.ts.map +1 -1
  33. package/build/qm/validation.js +0 -159
  34. package/build/qm/validation.js.map +1 -1
  35. package/build/types.d.ts +73 -149
  36. package/build/types.d.ts.map +1 -1
  37. package/build/types.js +8 -97
  38. package/build/types.js.map +1 -1
  39. package/build/utils/log.d.ts +23 -36
  40. package/build/utils/log.d.ts.map +1 -1
  41. package/build/utils/log.js +7 -11
  42. package/build/utils/log.js.map +1 -1
  43. package/build/utils/login.d.ts +4 -4
  44. package/build/utils/login.d.ts.map +1 -1
  45. package/build/utils/login.js +4 -4
  46. package/build/utils/login.js.map +1 -1
  47. package/build/utils/telemetry.d.ts.map +1 -1
  48. package/package.json +8 -6
  49. package/build/action.d.ts +0 -109
  50. package/build/action.d.ts.map +0 -1
  51. package/build/action.js +0 -5
  52. package/build/action.js.map +0 -1
  53. package/build/bicep.d.ts +0 -19
  54. package/build/bicep.d.ts.map +0 -1
  55. package/build/bicep.js +0 -5
  56. package/build/bicep.js.map +0 -1
  57. package/build/component.d.ts +0 -31
  58. package/build/component.d.ts.map +0 -1
  59. package/build/component.js +0 -3
  60. package/build/component.js.map +0 -1
  61. package/build/core.d.ts +0 -50
  62. package/build/core.d.ts.map +0 -1
  63. package/build/core.js +0 -5
  64. package/build/core.js.map +0 -1
  65. package/build/plugin.d.ts +0 -71
  66. package/build/plugin.d.ts.map +0 -1
  67. package/build/plugin.js +0 -5
  68. package/build/plugin.js.map +0 -1
  69. package/build/qm/visitor.d.ts +0 -15
  70. package/build/qm/visitor.d.ts.map +0 -1
  71. package/build/qm/visitor.js +0 -388
  72. package/build/qm/visitor.js.map +0 -1
  73. package/build/solution.d.ts +0 -29
  74. package/build/solution.d.ts.map +0 -1
  75. package/build/solution.js +0 -5
  76. package/build/solution.js.map +0 -1
  77. package/build/v2/index.d.ts +0 -4
  78. package/build/v2/index.d.ts.map +0 -1
  79. package/build/v2/index.js +0 -9
  80. package/build/v2/index.js.map +0 -1
  81. package/build/v2/resourcePlugin.d.ts +0 -180
  82. package/build/v2/resourcePlugin.d.ts.map +0 -1
  83. package/build/v2/resourcePlugin.js +0 -5
  84. package/build/v2/resourcePlugin.js.map +0 -1
  85. package/build/v2/solutionPlugin.d.ts +0 -100
  86. package/build/v2/solutionPlugin.d.ts.map +0 -1
  87. package/build/v2/solutionPlugin.js +0 -5
  88. package/build/v2/solutionPlugin.js.map +0 -1
  89. package/build/v2/types.d.ts +0 -67
  90. package/build/v2/types.d.ts.map +0 -1
  91. package/build/v2/types.js +0 -28
  92. package/build/v2/types.js.map +0 -1
  93. package/build/v3/AzureResourceStates.d.ts +0 -58
  94. package/build/v3/AzureResourceStates.d.ts.map +0 -1
  95. package/build/v3/AzureResourceStates.js +0 -3
  96. package/build/v3/AzureResourceStates.js.map +0 -1
  97. package/build/v3/core.d.ts +0 -22
  98. package/build/v3/core.d.ts.map +0 -1
  99. package/build/v3/core.js.map +0 -1
  100. package/build/v3/index.d.ts +0 -7
  101. package/build/v3/index.d.ts.map +0 -1
  102. package/build/v3/index.js +0 -12
  103. package/build/v3/index.js.map +0 -1
  104. package/build/v3/plugins.d.ts +0 -104
  105. package/build/v3/plugins.d.ts.map +0 -1
  106. package/build/v3/plugins.js +0 -5
  107. package/build/v3/plugins.js.map +0 -1
  108. package/build/v3/resourceStates.d.ts +0 -66
  109. package/build/v3/resourceStates.d.ts.map +0 -1
  110. package/build/v3/resourceStates.js +0 -5
  111. package/build/v3/resourceStates.js.map +0 -1
  112. package/build/v3/solution.d.ts +0 -40
  113. package/build/v3/solution.d.ts.map +0 -1
  114. package/build/v3/solution.js +0 -5
  115. package/build/v3/solution.js.map +0 -1
  116. package/build/v3/types.d.ts +0 -28
  117. package/build/v3/types.d.ts.map +0 -1
  118. package/build/v3/types.js +0 -5
  119. package/build/v3/types.js.map +0 -1
  120. package/build/vscode.d.ts +0 -22
  121. package/build/vscode.d.ts.map +0 -1
  122. package/build/vscode.js +0 -5
  123. package/build/vscode.js.map +0 -1
package/build/error.js CHANGED
@@ -2,15 +2,14 @@
2
2
  // Copyright (c) Microsoft Corporation.
3
3
  // Licensed under the MIT license.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.InvalidOperationError = exports.InvalidObjectError = exports.InvalidProjectError = exports.InvalidInputError = exports.ConcurrentError = exports.NoProjectOpenedError = exports.ReadFileError = exports.WriteFileError = exports.NotImplementedError = exports.UndefinedError = exports.ObjectNotExistError = exports.ObjectAlreadyExistsError = exports.PathAlreadyExistsError = exports.EmptyOptionError = exports.UserCancelError = exports.UnknownError = exports.assembleError = exports.SystemError = exports.UserError = void 0;
5
+ exports.SystemError = exports.UserError = void 0;
6
6
  /**
7
7
  * Users can recover by themselves, e.g., users input invalid app names.
8
8
  */
9
9
  class UserError extends Error {
10
10
  constructor(param1, param2, param3, param4) {
11
- var _a, _b;
11
+ var _a;
12
12
  let option;
13
- let stack;
14
13
  if (typeof param1 === "string") {
15
14
  option = {
16
15
  source: param1,
@@ -26,16 +25,11 @@ class UserError extends Error {
26
25
  const message = option.message || ((_a = option.error) === null || _a === void 0 ? void 0 : _a.message);
27
26
  super(message);
28
27
  //name
29
- this.name = option.name || ((_b = option.error) === null || _b === void 0 ? void 0 : _b.name) || new.target.name;
28
+ this.name = option.name || new.target.name;
30
29
  //source
31
30
  this.source = option.source || "unknown";
32
31
  //stack
33
- if (stack) {
34
- this.stack = stack;
35
- }
36
- else {
37
- Error.captureStackTrace(this, new.target);
38
- }
32
+ Error.captureStackTrace(this, new.target);
39
33
  //prototype
40
34
  Object.setPrototypeOf(this, new.target.prototype);
41
35
  //innerError
@@ -45,6 +39,7 @@ class UserError extends Error {
45
39
  this.userData = option.userData;
46
40
  this.displayMessage = option.displayMessage;
47
41
  this.timestamp = new Date();
42
+ this.categories = option.categories;
48
43
  }
49
44
  }
50
45
  exports.UserError = UserError;
@@ -53,9 +48,8 @@ exports.UserError = UserError;
53
48
  */
54
49
  class SystemError extends Error {
55
50
  constructor(param1, param2, param3, param4) {
56
- var _a, _b;
51
+ var _a;
57
52
  let option;
58
- let stack;
59
53
  if (typeof param1 === "string") {
60
54
  option = {
61
55
  source: param1,
@@ -71,16 +65,11 @@ class SystemError extends Error {
71
65
  const message = option.message || ((_a = option.error) === null || _a === void 0 ? void 0 : _a.message);
72
66
  super(message);
73
67
  //name
74
- this.name = option.name || ((_b = option.error) === null || _b === void 0 ? void 0 : _b.name) || new.target.name;
68
+ this.name = option.name || new.target.name;
75
69
  //source
76
70
  this.source = option.source || "unknown";
77
71
  //stack
78
- if (stack) {
79
- this.stack = stack;
80
- }
81
- else {
82
- Error.captureStackTrace(this, new.target);
83
- }
72
+ Error.captureStackTrace(this, new.target);
84
73
  //prototype
85
74
  Object.setPrototypeOf(this, new.target.prototype);
86
75
  //innerError
@@ -90,127 +79,8 @@ class SystemError extends Error {
90
79
  this.userData = option.userData;
91
80
  this.displayMessage = option.displayMessage;
92
81
  this.timestamp = new Date();
82
+ this.categories = option.categories;
93
83
  }
94
84
  }
95
85
  exports.SystemError = SystemError;
96
- function assembleError(e, source) {
97
- if (e instanceof UserError || e instanceof SystemError)
98
- return e;
99
- if (!source)
100
- source = "unknown";
101
- const type = typeof e;
102
- if (type === "string") {
103
- return new UnknownError(source, e);
104
- }
105
- else if (e instanceof Error) {
106
- const err = e;
107
- const fxError = new SystemError({ error: err, source });
108
- fxError.stack = err.stack;
109
- return fxError;
110
- }
111
- else {
112
- return new UnknownError(source, JSON.stringify(e));
113
- }
114
- }
115
- exports.assembleError = assembleError;
116
- class UnknownError extends SystemError {
117
- constructor(source, message) {
118
- super({ source: source || "API", message: message });
119
- }
120
- }
121
- exports.UnknownError = UnknownError;
122
- exports.UserCancelError = new UserError("UI", "UserCancel", "User canceled.");
123
- class EmptyOptionError extends SystemError {
124
- constructor(source) {
125
- super({ source: source || "API" });
126
- }
127
- }
128
- exports.EmptyOptionError = EmptyOptionError;
129
- class PathAlreadyExistsError extends UserError {
130
- constructor(source, path) {
131
- super({ source: source, message: `Path ${path} already exists.` });
132
- }
133
- }
134
- exports.PathAlreadyExistsError = PathAlreadyExistsError;
135
- class ObjectAlreadyExistsError extends UserError {
136
- constructor(source, name) {
137
- super({ source: source, message: `${name} already exists.` });
138
- }
139
- }
140
- exports.ObjectAlreadyExistsError = ObjectAlreadyExistsError;
141
- class ObjectNotExistError extends UserError {
142
- constructor(source, name) {
143
- super({ source: source, message: `${name} does not exist.` });
144
- }
145
- }
146
- exports.ObjectNotExistError = ObjectNotExistError;
147
- class UndefinedError extends SystemError {
148
- constructor(source, name) {
149
- super({ source: source, message: `${name} is undefined, which is not expected` });
150
- }
151
- }
152
- exports.UndefinedError = UndefinedError;
153
- class NotImplementedError extends SystemError {
154
- constructor(source, method) {
155
- super({ source: source, message: `Method not implemented:${method}` });
156
- }
157
- }
158
- exports.NotImplementedError = NotImplementedError;
159
- class WriteFileError extends SystemError {
160
- constructor(source, e) {
161
- super({ source: source, error: e, name: "WriteFileError" });
162
- }
163
- }
164
- exports.WriteFileError = WriteFileError;
165
- class ReadFileError extends SystemError {
166
- constructor(source, e) {
167
- super({ source: source, error: e, name: "ReadFileError" });
168
- }
169
- }
170
- exports.ReadFileError = ReadFileError;
171
- class NoProjectOpenedError extends UserError {
172
- constructor(source) {
173
- super({
174
- source: source,
175
- message: "No project opened, you can create a new project or open an existing one.",
176
- });
177
- }
178
- }
179
- exports.NoProjectOpenedError = NoProjectOpenedError;
180
- class ConcurrentError extends UserError {
181
- constructor(source) {
182
- super({
183
- source: source,
184
- message: "Previous task is still running. Please wait util your previous task to finish and try again.",
185
- });
186
- }
187
- }
188
- exports.ConcurrentError = ConcurrentError;
189
- class InvalidInputError extends UserError {
190
- constructor(source, name, reason) {
191
- super({ source: source, message: `Input '${name}' is invalid: ${reason}` });
192
- }
193
- }
194
- exports.InvalidInputError = InvalidInputError;
195
- class InvalidProjectError extends UserError {
196
- constructor(source, msg) {
197
- super({
198
- source: source,
199
- message: `The command only works for project created by Teams Toolkit. ${msg ? ": " + msg : ""}`,
200
- });
201
- }
202
- }
203
- exports.InvalidProjectError = InvalidProjectError;
204
- class InvalidObjectError extends UserError {
205
- constructor(source, name, reason) {
206
- super({ source: source, message: `${name} is invalid: ${reason}` });
207
- }
208
- }
209
- exports.InvalidObjectError = InvalidObjectError;
210
- class InvalidOperationError extends UserError {
211
- constructor(source, name, reason) {
212
- super({ source: source, message: `Invalid operation: ${name} ${reason}` });
213
- }
214
- }
215
- exports.InvalidOperationError = InvalidOperationError;
216
86
  //# sourceMappingURL=error.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"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"}
package/build/index.d.ts CHANGED
@@ -1,21 +1,10 @@
1
- import * as v2 from "./v2";
2
- import * as v3 from "./v3";
1
+ export * from "./qm";
2
+ export * from "./utils";
3
3
  export * from "./constants";
4
4
  export * from "./context";
5
- export * from "./core";
6
- export * from "./types";
7
- export * from "./plugin";
8
- export * from "./solution";
9
- export * from "./vscode";
10
- export * from "@microsoft/teams-manifest";
11
- export * from "./utils";
12
5
  export * from "./error";
13
- export * from "./qm";
14
- export * from "./schemas";
15
- export * from "./action";
16
- export * from "./bicep";
17
- export * from "./component";
18
- export { v2 };
19
- export { v3 };
6
+ export * from "./types";
20
7
  export * from "neverthrow";
8
+ export * from "@microsoft/teams-manifest";
9
+ export * from "./cli";
21
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,MAAM,CAAC;AAC3B,OAAO,KAAK,EAAE,MAAM,MAAM,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,2BAA2B,CAAC;AAC1C,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,MAAM,CAAC;AACrB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAG5B,OAAO,EAAE,EAAE,EAAE,CAAC;AACd,OAAO,EAAE,EAAE,EAAE,CAAC;AACd,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,cAAc,MAAM,CAAC;AACrB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,OAAO,CAAC"}
package/build/index.js CHANGED
@@ -2,26 +2,14 @@
2
2
  // Licensed under the MIT license.
3
3
  "use strict";
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.v3 = exports.v2 = void 0;
6
5
  const tslib_1 = require("tslib");
7
- const v2 = tslib_1.__importStar(require("./v2"));
8
- exports.v2 = v2;
9
- const v3 = tslib_1.__importStar(require("./v3"));
10
- exports.v3 = v3;
6
+ tslib_1.__exportStar(require("./qm"), exports);
7
+ tslib_1.__exportStar(require("./utils"), exports);
11
8
  tslib_1.__exportStar(require("./constants"), exports);
12
9
  tslib_1.__exportStar(require("./context"), exports);
13
- tslib_1.__exportStar(require("./core"), exports);
14
- tslib_1.__exportStar(require("./types"), exports);
15
- tslib_1.__exportStar(require("./plugin"), exports);
16
- tslib_1.__exportStar(require("./solution"), exports);
17
- tslib_1.__exportStar(require("./vscode"), exports);
18
- tslib_1.__exportStar(require("@microsoft/teams-manifest"), exports);
19
- tslib_1.__exportStar(require("./utils"), exports);
20
10
  tslib_1.__exportStar(require("./error"), exports);
21
- tslib_1.__exportStar(require("./qm"), exports);
22
- tslib_1.__exportStar(require("./schemas"), exports);
23
- tslib_1.__exportStar(require("./action"), exports);
24
- tslib_1.__exportStar(require("./bicep"), exports);
25
- tslib_1.__exportStar(require("./component"), exports);
11
+ tslib_1.__exportStar(require("./types"), exports);
26
12
  tslib_1.__exportStar(require("neverthrow"), exports);
13
+ tslib_1.__exportStar(require("@microsoft/teams-manifest"), exports);
14
+ tslib_1.__exportStar(require("./cli"), exports);
27
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,YAAY,CAAC;;;;AACb,iDAA2B;AAmBlB,gBAAE;AAlBX,iDAA2B;AAmBlB,gBAAE;AAlBX,sDAA4B;AAC5B,oDAA0B;AAC1B,iDAAuB;AACvB,kDAAwB;AACxB,mDAAyB;AACzB,qDAA2B;AAC3B,mDAAyB;AACzB,oEAA0C;AAC1C,kDAAwB;AACxB,kDAAwB;AACxB,+CAAqB;AACrB,oDAA0B;AAC1B,mDAAyB;AACzB,kDAAwB;AACxB,sDAA4B;AAK5B,qDAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,YAAY,CAAC;;;AACb,+CAAqB;AACrB,kDAAwB;AACxB,sDAA4B;AAC5B,oDAA0B;AAC1B,kDAAwB;AACxB,kDAAwB;AACxB,qDAA2B;AAC3B,oEAA0C;AAC1C,gDAAsB"}
@@ -1,5 +1,4 @@
1
1
  export * from "./question";
2
2
  export * from "./ui";
3
- export * from "./visitor";
4
3
  export * from "./validation";
5
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/qm/index.ts"],"names":[],"mappings":"AAIA,cAAc,YAAY,CAAC;AAC3B,cAAc,MAAM,CAAC;AACrB,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/qm/index.ts"],"names":[],"mappings":"AAIA,cAAc,YAAY,CAAC;AAC3B,cAAc,MAAM,CAAC;AACrB,cAAc,cAAc,CAAC"}
package/build/qm/index.js CHANGED
@@ -5,6 +5,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
5
5
  const tslib_1 = require("tslib");
6
6
  tslib_1.__exportStar(require("./question"), exports);
7
7
  tslib_1.__exportStar(require("./ui"), exports);
8
- tslib_1.__exportStar(require("./visitor"), exports);
9
8
  tslib_1.__exportStar(require("./validation"), exports);
10
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/qm/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,YAAY,CAAC;;;AAEb,qDAA2B;AAC3B,+CAAqB;AACrB,oDAA0B;AAC1B,uDAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/qm/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,YAAY,CAAC;;;AAEb,qDAA2B;AAC3B,+CAAqB;AACrB,uDAA6B"}
@@ -1,5 +1,5 @@
1
1
  import { Inputs, OptionItem } from "../types";
2
- import { FuncValidation, StringArrayValidation, StringValidation, ValidationSchema } from "./validation";
2
+ import { ConditionFunc, FuncValidation, StringArrayValidation, StringValidation, ValidationSchema } from "./validation";
3
3
  export interface FunctionRouter {
4
4
  namespace: string;
5
5
  method: string;
@@ -10,18 +10,18 @@ export interface Func extends FunctionRouter {
10
10
  /**
11
11
  * definition of a function that return some dynamic value
12
12
  */
13
- export declare type LocalFunc<T> = (inputs: Inputs) => T | Promise<T>;
14
- export declare type OnSelectionChangeFunc = (currentSelectedIds: Set<string>, previousSelectedIds: Set<string>) => Promise<Set<string>>;
13
+ export type LocalFunc<T> = (inputs: Inputs) => T | Promise<T>;
14
+ export type OnSelectionChangeFunc = (currentSelectedIds: Set<string>, previousSelectedIds: Set<string>) => Promise<Set<string>>;
15
15
  /**
16
16
  * static option is `string` array or `OptionItem` array.
17
17
  * If the option is a string array, each element of which will be converted to an `OptionItem` object with `id` and `label` field equal to the string element.
18
18
  * For example, option=['id1','id2'] => [{'id':'id1', label:'id1'},{'id':'id2', label:'id2'}].
19
19
  */
20
- export declare type StaticOptions = string[] | OptionItem[];
20
+ export type StaticOptions = string[] | OptionItem[];
21
21
  /**
22
22
  * dynamic option is defined by a function
23
23
  */
24
- export declare type DynamicOptions = LocalFunc<StaticOptions>;
24
+ export type DynamicOptions = LocalFunc<StaticOptions>;
25
25
  /**
26
26
  * Basic question data
27
27
  */
@@ -38,6 +38,7 @@ export interface BaseQuestion {
38
38
  * the answer of the question
39
39
  */
40
40
  value?: unknown;
41
+ valueType?: "skip" | "success";
41
42
  /**
42
43
  * default input value
43
44
  */
@@ -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" | "innerText";
79
80
  /**
80
81
  * title is required for human input question
81
82
  */
@@ -102,6 +103,37 @@ export interface UserInputQuestion extends BaseQuestion {
102
103
  * An optional validation message indicating or explaining the problem with the current input value.
103
104
  */
104
105
  validationHelp?: string;
106
+ /**
107
+ * A flag to indicate whether the question is required for CLI non-interactive mode.
108
+ * Default value is false.
109
+ * If not explicitly defined, the framework will try to fillin this field.
110
+ */
111
+ required?: boolean;
112
+ /**
113
+ * alternative names of the question that use to map the input properties into final Input object
114
+ */
115
+ alternativeNames?: string[];
116
+ /**
117
+ * CLI option/argument name, if not specified, the question name will be used as the CLI option/argument name
118
+ */
119
+ cliName?: string;
120
+ /**
121
+ * the question is only for CLI option abbrevation
122
+ */
123
+ cliShortName?: string;
124
+ /**
125
+ * whether the value is a boolean string value, if true, it will support '--option', which is equivalant to '--option true'
126
+ */
127
+ isBoolean?: boolean;
128
+ /**
129
+ * whether the question is mapped to CLI option or argument, default is option
130
+ */
131
+ cliType?: "option" | "argument";
132
+ cliDescription?: string;
133
+ /**
134
+ * @description the question will converted to a hidden option in CLI
135
+ */
136
+ cliHidden?: boolean;
105
137
  }
106
138
  /**
107
139
  * Definition of single selection question
@@ -136,6 +168,14 @@ export interface SingleSelectQuestion extends UserInputQuestion {
136
168
  * if false: use still need to do the selection manually even there is no other choice.
137
169
  */
138
170
  skipSingleOption?: boolean;
171
+ /**
172
+ * the command is only for CLI option description
173
+ */
174
+ cliChoiceListCommand?: string;
175
+ /**
176
+ * whether to skip validation against allowed list in non-interactive mode, default false
177
+ */
178
+ skipValidation?: boolean;
139
179
  }
140
180
  /**
141
181
  * Definition of multiple selection question
@@ -181,6 +221,14 @@ export interface MultiSelectQuestion extends UserInputQuestion {
181
221
  * validation schema for the answer values
182
222
  */
183
223
  validation?: StringArrayValidation | FuncValidation<string[]>;
224
+ /**
225
+ * the command is only for CLI option description
226
+ */
227
+ cliChoiceListCommand?: string;
228
+ /**
229
+ * whether to skip validation against allowed list in non-interactive mode, default false
230
+ */
231
+ skipValidation?: boolean;
184
232
  }
185
233
  /**
186
234
  * Definition of text input question
@@ -204,6 +252,33 @@ export interface TextInputQuestion extends UserInputQuestion {
204
252
  * validation schema, which can be a dynamic function closure
205
253
  */
206
254
  validation?: StringValidation | FuncValidation<string>;
255
+ /**
256
+ * validation when user confirms the input.
257
+ */
258
+ additionalValidationOnAccept?: StringValidation | FuncValidation<string>;
259
+ }
260
+ /**
261
+ * Definition of text input question of a sub-question of SingleFileOrInputQuestion
262
+ */
263
+ export interface InnerTextInputQuestion extends UserInputQuestion {
264
+ type: "innerText";
265
+ /**
266
+ * If the input value should be hidden. Defaults to false.
267
+ */
268
+ password?: boolean;
269
+ /**
270
+ * input value.
271
+ */
272
+ value?: string;
273
+ /**
274
+ * default value
275
+ *
276
+ */
277
+ default?: string | LocalFunc<string | undefined>;
278
+ /**
279
+ * validation schema, which can be a dynamic function closure
280
+ */
281
+ validation?: StringValidation | FuncValidation<string>;
207
282
  }
208
283
  /**
209
284
  * Definition of single file selection
@@ -222,6 +297,20 @@ export interface SingleFileQuestion extends UserInputQuestion {
222
297
  * validation function
223
298
  */
224
299
  validation?: FuncValidation<string>;
300
+ /**
301
+ * This will only take effect in VSC.
302
+ * A set of file filters that are used by the dialog. Each entry is a human-readable label,
303
+ * like "TypeScript", and an array of extensions, e.g.
304
+ * ```ts
305
+ * {
306
+ * 'Images': ['png', 'jpg']
307
+ * 'TypeScript': ['ts', 'tsx']
308
+ * }
309
+ * ```
310
+ */
311
+ filters?: {
312
+ [name: string]: string[];
313
+ };
225
314
  }
226
315
  export interface MultiFileQuestion extends UserInputQuestion {
227
316
  type: "multiFile";
@@ -253,16 +342,30 @@ export interface FolderQuestion extends UserInputQuestion {
253
342
  */
254
343
  validation?: FuncValidation<string>;
255
344
  }
256
- /**
257
- * `FuncQuestion` will not show any UI, but load some dynamic data in the question flow;
258
- * The dynamic data can be referred by the following question.
259
- */
260
- export interface FuncQuestion extends BaseQuestion {
261
- type: "func";
345
+ export interface SingleFileOrInputQuestion extends UserInputQuestion {
346
+ type: "singleFileOrText";
347
+ /**
348
+ * An item shown in the list in VSC that user can click to input text.
349
+ */
350
+ inputOptionItem: OptionItem;
351
+ /**
352
+ * Config for the input box.
353
+ */
354
+ inputBoxConfig: InnerTextInputQuestion;
262
355
  /**
263
- * A function that will be called to when the question is activated.
356
+ * This will only take effect in VSC.
357
+ * A set of file filters that are used by the dialog. Each entry is a human-readable label,
358
+ * like "TypeScript", and an array of extensions, e.g.
359
+ * ```ts
360
+ * {
361
+ * 'Images': ['png', 'jpg']
362
+ * 'TypeScript': ['ts', 'tsx']
363
+ * }
364
+ * ```
264
365
  */
265
- func: LocalFunc<any>;
366
+ filters?: {
367
+ [name: string]: string[];
368
+ };
266
369
  }
267
370
  /**
268
371
  * `Group` is a virtual node in the question tree that wraps a group of questions, which share the same activation condition in this group.
@@ -271,25 +374,30 @@ export interface Group {
271
374
  type: "group";
272
375
  name?: string;
273
376
  }
274
- export declare type Question = SingleSelectQuestion | MultiSelectQuestion | TextInputQuestion | SingleFileQuestion | MultiFileQuestion | FolderQuestion | FuncQuestion | SingleFileQuestion;
377
+ export type Question = SingleSelectQuestion | MultiSelectQuestion | TextInputQuestion | SingleFileQuestion | MultiFileQuestion | FolderQuestion | SingleFileQuestion | SingleFileOrInputQuestion;
275
378
  /**
276
- * QTreeNode is the tree node data structure, which have three main properties:
379
+ * IQTreeNode is the tree node data structure, which have three main properties:
277
380
  * - data: data is either a group or question. Questions can be organized into a group, which has the same trigger condition.
278
381
  * - condition: trigger condition for this node to be activated;
279
382
  * - children: child questions that will be activated according their trigger condition.
280
383
  */
281
- export declare class QTreeNode {
384
+ export interface IQTreeNode {
282
385
  data: Question | Group;
283
- condition?: ValidationSchema & {
284
- target?: string;
285
- };
286
- children?: QTreeNode[];
287
- addChild(node: QTreeNode): QTreeNode;
288
- validate(): boolean;
386
+ condition?: StringValidation | StringArrayValidation | ConditionFunc;
387
+ children?: IQTreeNode[];
388
+ /**
389
+ * @description the question node will be ignored as CLI option in non-interactive mode
390
+ * "self" - only ignore the question itself
391
+ * "children" - ignore all nodes in sub-tree
392
+ * "all" - ignore self and all nodes in sub-tree
393
+ */
394
+ cliOptionDisabled?: "self" | "children" | "all";
289
395
  /**
290
- * trim the tree
396
+ * @description the question node will be ignored as an Inputs property
397
+ * "self" - only ignore the question itself
398
+ * "children" - ignore all nodes in sub-tree
399
+ * "all" - ignore self and all nodes in sub-tree
291
400
  */
292
- trim(): QTreeNode | undefined;
293
- constructor(data: Question | Group);
401
+ inputsDisabled?: "self" | "children" | "all";
294
402
  }
295
403
  //# sourceMappingURL=question.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"question.d.ts","sourceRoot":"","sources":["../../src/qm/question.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"question.d.ts","sourceRoot":"","sources":["../../src/qm/question.ts"],"names":[],"mappings":"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"}
@@ -2,57 +2,4 @@
2
2
  // Copyright (c) Microsoft Corporation.
3
3
  // Licensed under the MIT license.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.QTreeNode = void 0;
6
- /**
7
- * QTreeNode is the tree node data structure, which have three main properties:
8
- * - data: data is either a group or question. Questions can be organized into a group, which has the same trigger condition.
9
- * - condition: trigger condition for this node to be activated;
10
- * - children: child questions that will be activated according their trigger condition.
11
- */
12
- class QTreeNode {
13
- constructor(data) {
14
- this.data = data;
15
- }
16
- addChild(node) {
17
- if (!this.children) {
18
- this.children = [];
19
- }
20
- this.children.push(node);
21
- return this;
22
- }
23
- validate() {
24
- //1. validate the cycle dependency
25
- //2. validate the name uniqueness
26
- //3. validate the params of RPC
27
- // if (this.data.type === NodeType.group && (!this.children || this.children.length === 0)) return false;
28
- return true;
29
- }
30
- /**
31
- * trim the tree
32
- */
33
- trim() {
34
- if (this.children) {
35
- const newChildren = [];
36
- for (const node of this.children) {
37
- const trimmed = node.trim();
38
- if (trimmed)
39
- newChildren.push(trimmed);
40
- }
41
- this.children = newChildren;
42
- }
43
- if (this.data.type === "group") {
44
- if (!this.children || this.children.length === 0)
45
- return undefined;
46
- if (this.children.length === 1) {
47
- const child = this.children[0];
48
- if (!(this.condition && child.condition)) {
49
- child.condition || (child.condition = this.condition);
50
- return child;
51
- }
52
- }
53
- }
54
- return this;
55
- }
56
- }
57
- exports.QTreeNode = QTreeNode;
58
5
  //# sourceMappingURL=question.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"question.js","sourceRoot":"","sources":["../../src/qm/question.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAqUlC;;;;;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"}
1
+ {"version":3,"file":"question.js","sourceRoot":"","sources":["../../src/qm/question.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC"}