@microsoft/teamsfx-core 2.0.6-alpha.da822cd72.0 → 2.0.6-alpha.e5db52f29.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 (133) hide show
  1. package/build/common/featureFlags.d.ts +1 -0
  2. package/build/common/featureFlags.d.ts.map +1 -1
  3. package/build/common/featureFlags.js +5 -1
  4. package/build/common/featureFlags.js.map +1 -1
  5. package/build/common/local/constants.d.ts +1 -0
  6. package/build/common/local/constants.d.ts.map +1 -1
  7. package/build/common/local/constants.js +1 -0
  8. package/build/common/local/constants.js.map +1 -1
  9. package/build/common/m365/launchHelper.d.ts +1 -1
  10. package/build/common/m365/launchHelper.d.ts.map +1 -1
  11. package/build/common/m365/launchHelper.js +2 -2
  12. package/build/common/m365/launchHelper.js.map +1 -1
  13. package/build/common/m365/packageService.d.ts +1 -0
  14. package/build/common/m365/packageService.d.ts.map +1 -1
  15. package/build/common/m365/packageService.js +68 -0
  16. package/build/common/m365/packageService.js.map +1 -1
  17. package/build/common/spec-parser/adaptiveCardGenerator.d.ts +3 -2
  18. package/build/common/spec-parser/adaptiveCardGenerator.d.ts.map +1 -1
  19. package/build/common/spec-parser/adaptiveCardGenerator.js +49 -19
  20. package/build/common/spec-parser/adaptiveCardGenerator.js.map +1 -1
  21. package/build/common/spec-parser/adaptiveCardWrapper.d.ts.map +1 -1
  22. package/build/common/spec-parser/adaptiveCardWrapper.js.map +1 -1
  23. package/build/common/spec-parser/constants.d.ts +15 -14
  24. package/build/common/spec-parser/constants.d.ts.map +1 -1
  25. package/build/common/spec-parser/constants.js +15 -15
  26. package/build/common/spec-parser/constants.js.map +1 -1
  27. package/build/common/spec-parser/index.d.ts +5 -0
  28. package/build/common/spec-parser/index.d.ts.map +1 -0
  29. package/build/common/spec-parser/index.js +16 -0
  30. package/build/common/spec-parser/index.js.map +1 -0
  31. package/build/common/spec-parser/interfaces.d.ts +20 -4
  32. package/build/common/spec-parser/interfaces.d.ts.map +1 -1
  33. package/build/common/spec-parser/interfaces.js +1 -2
  34. package/build/common/spec-parser/interfaces.js.map +1 -1
  35. package/build/common/spec-parser/manifestUpdater.d.ts +1 -2
  36. package/build/common/spec-parser/manifestUpdater.d.ts.map +1 -1
  37. package/build/common/spec-parser/manifestUpdater.js +9 -98
  38. package/build/common/spec-parser/manifestUpdater.js.map +1 -1
  39. package/build/common/spec-parser/specFilter.d.ts +1 -1
  40. package/build/common/spec-parser/specFilter.d.ts.map +1 -1
  41. package/build/common/spec-parser/specFilter.js +2 -2
  42. package/build/common/spec-parser/specFilter.js.map +1 -1
  43. package/build/common/spec-parser/specParser.d.ts +10 -5
  44. package/build/common/spec-parser/specParser.d.ts.map +1 -1
  45. package/build/common/spec-parser/specParser.js +34 -84
  46. package/build/common/spec-parser/specParser.js.map +1 -1
  47. package/build/common/spec-parser/utils.d.ts +11 -4
  48. package/build/common/spec-parser/utils.d.ts.map +1 -1
  49. package/build/common/spec-parser/utils.js +184 -31
  50. package/build/common/spec-parser/utils.js.map +1 -1
  51. package/build/common/templates-config.json +2 -2
  52. package/build/component/configManager/lifecycle.d.ts +1 -0
  53. package/build/component/configManager/lifecycle.d.ts.map +1 -1
  54. package/build/component/configManager/lifecycle.js +17 -5
  55. package/build/component/configManager/lifecycle.js.map +1 -1
  56. package/build/component/coordinator/index.d.ts.map +1 -1
  57. package/build/component/coordinator/index.js +12 -9
  58. package/build/component/coordinator/index.js.map +1 -1
  59. package/build/component/developerPortalScaffoldUtils.d.ts.map +1 -1
  60. package/build/component/developerPortalScaffoldUtils.js +32 -0
  61. package/build/component/developerPortalScaffoldUtils.js.map +1 -1
  62. package/build/component/driver/add/addWebPart.d.ts.map +1 -1
  63. package/build/component/driver/add/addWebPart.js +2 -0
  64. package/build/component/driver/add/addWebPart.js.map +1 -1
  65. package/build/component/driver/add/interface/AddWebPartArgs.d.ts +4 -0
  66. package/build/component/driver/add/interface/AddWebPartArgs.d.ts.map +1 -1
  67. package/build/component/driver/teamsApp/publishAppPackage.d.ts +1 -0
  68. package/build/component/driver/teamsApp/publishAppPackage.d.ts.map +1 -1
  69. package/build/component/driver/teamsApp/publishAppPackage.js +9 -9
  70. package/build/component/driver/teamsApp/publishAppPackage.js.map +1 -1
  71. package/build/component/driver/teamsApp/teamsappMgr.d.ts +20 -0
  72. package/build/component/driver/teamsApp/teamsappMgr.d.ts.map +1 -0
  73. package/build/component/driver/teamsApp/teamsappMgr.js +278 -0
  74. package/build/component/driver/teamsApp/teamsappMgr.js.map +1 -0
  75. package/build/component/generator/copilotPlugin/generator.d.ts.map +1 -1
  76. package/build/component/generator/copilotPlugin/generator.js +11 -14
  77. package/build/component/generator/copilotPlugin/generator.js.map +1 -1
  78. package/build/component/generator/copilotPlugin/helper.d.ts +5 -2
  79. package/build/component/generator/copilotPlugin/helper.d.ts.map +1 -1
  80. package/build/component/generator/copilotPlugin/helper.js +83 -13
  81. package/build/component/generator/copilotPlugin/helper.js.map +1 -1
  82. package/build/component/generator/generator.d.ts.map +1 -1
  83. package/build/component/generator/generator.js +4 -2
  84. package/build/component/generator/generator.js.map +1 -1
  85. package/build/component/generator/generatorAction.d.ts +1 -1
  86. package/build/component/generator/generatorAction.d.ts.map +1 -1
  87. package/build/component/generator/generatorAction.js +8 -6
  88. package/build/component/generator/generatorAction.js.map +1 -1
  89. package/build/component/generator/officeAddin/generator.js +1 -1
  90. package/build/component/generator/officeAddin/generator.js.map +1 -1
  91. package/build/component/generator/officeAddin/helperMethods.d.ts.map +1 -1
  92. package/build/component/generator/officeAddin/helperMethods.js +20 -17
  93. package/build/component/generator/officeAddin/helperMethods.js.map +1 -1
  94. package/build/component/utils/common.d.ts.map +1 -1
  95. package/build/component/utils/common.js +9 -2
  96. package/build/component/utils/common.js.map +1 -1
  97. package/build/component/utils/envUtil.d.ts +1 -0
  98. package/build/component/utils/envUtil.d.ts.map +1 -1
  99. package/build/component/utils/envUtil.js +5 -0
  100. package/build/component/utils/envUtil.js.map +1 -1
  101. package/build/core/FxCore.d.ts +17 -2
  102. package/build/core/FxCore.d.ts.map +1 -1
  103. package/build/core/FxCore.js +75 -7
  104. package/build/core/FxCore.js.map +1 -1
  105. package/build/core/middleware/projectMigratorV3.js +1 -1
  106. package/build/core/middleware/projectMigratorV3.js.map +1 -1
  107. package/build/question/create.d.ts +7 -6
  108. package/build/question/create.d.ts.map +1 -1
  109. package/build/question/create.js +77 -73
  110. package/build/question/create.js.map +1 -1
  111. package/build/question/inputs/CreateProjectInputs.d.ts +4 -4
  112. package/build/question/inputs/CreateProjectInputs.d.ts.map +1 -1
  113. package/build/question/inputs/SPFxAddWebpartInputs.d.ts +2 -0
  114. package/build/question/inputs/SPFxAddWebpartInputs.d.ts.map +1 -1
  115. package/build/question/options/CreateProjectOptions.d.ts.map +1 -1
  116. package/build/question/options/CreateProjectOptions.js +7 -8
  117. package/build/question/options/CreateProjectOptions.js.map +1 -1
  118. package/build/question/options/SPFxAddWebpartOptions.d.ts.map +1 -1
  119. package/build/question/options/SPFxAddWebpartOptions.js +9 -0
  120. package/build/question/options/SPFxAddWebpartOptions.js.map +1 -1
  121. package/build/question/other.d.ts.map +1 -1
  122. package/build/question/other.js +21 -0
  123. package/build/question/other.js.map +1 -1
  124. package/build/question/questionNames.d.ts +1 -2
  125. package/build/question/questionNames.d.ts.map +1 -1
  126. package/build/question/questionNames.js +1 -2
  127. package/build/question/questionNames.js.map +1 -1
  128. package/package.json +5 -4
  129. package/resource/package.nls.json +13 -15
  130. package/templates/fallback/common.zip +0 -0
  131. package/templates/fallback/csharp.zip +0 -0
  132. package/templates/fallback/js.zip +0 -0
  133. package/templates/fallback/ts.zip +0 -0
@@ -0,0 +1,16 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+ "use strict";
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.ConstantString = exports.ErrorType = exports.WarningType = exports.ValidationStatus = exports.SpecParserError = exports.SpecParser = void 0;
6
+ var specParser_1 = require("./specParser");
7
+ Object.defineProperty(exports, "SpecParser", { enumerable: true, get: function () { return specParser_1.SpecParser; } });
8
+ var specParserError_1 = require("./specParserError");
9
+ Object.defineProperty(exports, "SpecParserError", { enumerable: true, get: function () { return specParserError_1.SpecParserError; } });
10
+ var interfaces_1 = require("./interfaces");
11
+ Object.defineProperty(exports, "ValidationStatus", { enumerable: true, get: function () { return interfaces_1.ValidationStatus; } });
12
+ Object.defineProperty(exports, "WarningType", { enumerable: true, get: function () { return interfaces_1.WarningType; } });
13
+ Object.defineProperty(exports, "ErrorType", { enumerable: true, get: function () { return interfaces_1.ErrorType; } });
14
+ var constants_1 = require("./constants");
15
+ Object.defineProperty(exports, "ConstantString", { enumerable: true, get: function () { return constants_1.ConstantString; } });
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/spec-parser/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,YAAY,CAAC;;;AAEb,2CAA0C;AAAjC,wGAAA,UAAU,OAAA;AACnB,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,2CAAuF;AAA9E,8GAAA,gBAAgB,OAAA;AAAE,yGAAA,WAAW,OAAA;AAAE,uGAAA,SAAS,OAAA;AACjD,yCAA6C;AAApC,2GAAA,cAAc,OAAA"}
@@ -65,6 +65,7 @@ export declare enum ErrorType {
65
65
  NoSupportedApi = "no-supported-api",
66
66
  NoExtraAPICanBeAdded = "no-extra-api-can-be-added",
67
67
  ResolveServerUrlFailed = "resolve-server-url-failed",
68
+ SwaggerNotSupported = "swagger-not-supported",
68
69
  ListFailed = "list-failed",
69
70
  ListOperationMapFailed = "list-operation-map-failed",
70
71
  FilterSpecFailed = "filter-spec-failed",
@@ -79,8 +80,6 @@ export declare enum ErrorType {
79
80
  * An enum that represents the types of warnings that can occur during validation.
80
81
  */
81
82
  export declare enum WarningType {
82
- AuthNotSupported = "auth-not-supported",
83
- MethodNotSupported = "method-not-supported",
84
83
  OperationIdMissing = "operationid-missing",
85
84
  GenerateCardFailed = "generate-card-failed",
86
85
  OperationOnlyContainsOptionalParam = "operation-only-contains-optional-param",
@@ -100,16 +99,21 @@ export interface TextBlockElement {
100
99
  text: string;
101
100
  wrap: boolean;
102
101
  }
102
+ export interface ImageElement {
103
+ type: string;
104
+ url: string;
105
+ $when: string;
106
+ }
103
107
  export interface ArrayElement {
104
108
  type: string;
105
109
  $data: string;
106
- items: Array<TextBlockElement | ArrayElement>;
110
+ items: Array<TextBlockElement | ImageElement | ArrayElement>;
107
111
  }
108
112
  export interface AdaptiveCard {
109
113
  type: string;
110
114
  $schema: string;
111
115
  version: string;
112
- body: Array<TextBlockElement | ArrayElement>;
116
+ body: Array<TextBlockElement | ImageElement | ArrayElement>;
113
117
  }
114
118
  export interface PreviewCardTemplate {
115
119
  title: string;
@@ -138,4 +142,16 @@ export interface CheckParamResult {
138
142
  optionalNum: number;
139
143
  isValid: boolean;
140
144
  }
145
+ export interface ParseOptions {
146
+ allowMissingId?: boolean;
147
+ allowSwagger?: boolean;
148
+ }
149
+ export interface APIInfo {
150
+ method: string;
151
+ path: string;
152
+ title: string;
153
+ id: string;
154
+ parameters: Parameter[];
155
+ description: string;
156
+ }
141
157
  //# sourceMappingURL=interfaces.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/interfaces.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ var ErrorType;
16
16
  ErrorType["NoSupportedApi"] = "no-supported-api";
17
17
  ErrorType["NoExtraAPICanBeAdded"] = "no-extra-api-can-be-added";
18
18
  ErrorType["ResolveServerUrlFailed"] = "resolve-server-url-failed";
19
+ ErrorType["SwaggerNotSupported"] = "swagger-not-supported";
19
20
  ErrorType["ListFailed"] = "list-failed";
20
21
  ErrorType["ListOperationMapFailed"] = "list-operation-map-failed";
21
22
  ErrorType["FilterSpecFailed"] = "filter-spec-failed";
@@ -31,8 +32,6 @@ var ErrorType;
31
32
  */
32
33
  var WarningType;
33
34
  (function (WarningType) {
34
- WarningType["AuthNotSupported"] = "auth-not-supported";
35
- WarningType["MethodNotSupported"] = "method-not-supported";
36
35
  WarningType["OperationIdMissing"] = "operationid-missing";
37
36
  WarningType["GenerateCardFailed"] = "generate-card-failed";
38
37
  WarningType["OperationOnlyContainsOptionalParam"] = "operation-only-contains-optional-param";
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/common/spec-parser/interfaces.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,YAAY,CAAC;;;AAmEb;;GAEG;AACH,IAAY,SAoBX;AApBD,WAAY,SAAS;IACnB,4CAA+B,CAAA;IAC/B,+DAAkD,CAAA;IAClD,0DAA6C,CAAA;IAC7C,mEAAsD,CAAA;IACtD,gFAAmE,CAAA;IACnE,gDAAmC,CAAA;IACnC,+DAAkD,CAAA;IAClD,iEAAoD,CAAA;IAEpD,uCAA0B,CAAA;IAC1B,iEAAoD,CAAA;IACpD,oDAAuC,CAAA;IACvC,4DAA+C,CAAA;IAC/C,yEAA4D,CAAA;IAC5D,+CAAkC,CAAA;IAClC,+CAAkC,CAAA;IAElC,oCAAuB,CAAA;IACvB,gCAAmB,CAAA;AACrB,CAAC,EApBW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAoBpB;AAED;;GAEG;AACH,IAAY,WAQX;AARD,WAAY,WAAW;IACrB,sDAAuC,CAAA;IACvC,0DAA2C,CAAA;IAC3C,yDAA0C,CAAA;IAC1C,0DAA2C,CAAA;IAC3C,4FAA6E,CAAA;IAC7E,qEAAsD,CAAA;IACtD,kCAAmB,CAAA;AACrB,CAAC,EARW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAQtB;AAED;;GAEG;AACH,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,yDAAK,CAAA;IACL,6DAAO,CAAA;IACP,yDAAK,CAAA;AACP,CAAC,EAJW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAI3B"}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/common/spec-parser/interfaces.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,YAAY,CAAC;;;AAmEb;;GAEG;AACH,IAAY,SAqBX;AArBD,WAAY,SAAS;IACnB,4CAA+B,CAAA;IAC/B,+DAAkD,CAAA;IAClD,0DAA6C,CAAA;IAC7C,mEAAsD,CAAA;IACtD,gFAAmE,CAAA;IACnE,gDAAmC,CAAA;IACnC,+DAAkD,CAAA;IAClD,iEAAoD,CAAA;IACpD,0DAA6C,CAAA;IAE7C,uCAA0B,CAAA;IAC1B,iEAAoD,CAAA;IACpD,oDAAuC,CAAA;IACvC,4DAA+C,CAAA;IAC/C,yEAA4D,CAAA;IAC5D,+CAAkC,CAAA;IAClC,+CAAkC,CAAA;IAElC,oCAAuB,CAAA;IACvB,gCAAmB,CAAA;AACrB,CAAC,EArBW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAqBpB;AAED;;GAEG;AACH,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,yDAA0C,CAAA;IAC1C,0DAA2C,CAAA;IAC3C,4FAA6E,CAAA;IAC7E,qEAAsD,CAAA;IACtD,kCAAmB,CAAA;AACrB,CAAC,EANW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAMtB;AAED;;GAEG;AACH,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,yDAAK,CAAA;IACL,6DAAO,CAAA;IACP,yDAAK,CAAA;AACP,CAAC,EAJW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAI3B"}
@@ -1,7 +1,6 @@
1
1
  import { OpenAPIV3 } from "openapi-types";
2
- import { Parameter, WarningResult } from "./interfaces";
2
+ import { WarningResult } from "./interfaces";
3
3
  import { IMessagingExtensionCommand, TeamsAppManifest } from "@microsoft/teamsfx-api";
4
4
  export declare function updateManifest(manifestPath: string, outputSpecPath: string, adaptiveCardFolder: string, spec: OpenAPIV3.Document): Promise<[TeamsAppManifest, WarningResult[]]>;
5
- export declare function generateParametersFromSchema(schema: OpenAPIV3.SchemaObject, name: string, isRequired?: boolean): [Parameter[], Parameter[]];
6
5
  export declare function generateCommands(spec: OpenAPIV3.Document, adaptiveCardFolder: string, manifestPath: string): Promise<[IMessagingExtensionCommand[], WarningResult[]]>;
7
6
  //# sourceMappingURL=manifestUpdater.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"manifestUpdater.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/manifestUpdater.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAa,aAAa,EAAe,MAAM,cAAc,CAAC;AAOhF,OAAO,EAEL,0BAA0B,EAC1B,gBAAgB,EACjB,MAAM,wBAAwB,CAAC;AAChC,wBAAsB,cAAc,CAClC,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACtB,kBAAkB,EAAE,MAAM,EAC1B,IAAI,EAAE,SAAS,CAAC,QAAQ,GACvB,OAAO,CAAC,CAAC,gBAAgB,EAAE,aAAa,EAAE,CAAC,CAAC,CA0B9C;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,SAAS,CAAC,YAAY,EAC9B,IAAI,EAAE,MAAM,EACZ,UAAU,UAAQ,GACjB,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,CAAC,CAuC5B;AAED,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,SAAS,CAAC,QAAQ,EACxB,kBAAkB,EAAE,MAAM,EAC1B,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,CAAC,0BAA0B,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC,CA6F1D"}
1
+ {"version":3,"file":"manifestUpdater.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/manifestUpdater.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAG1C,OAAO,EAAa,aAAa,EAAE,MAAM,cAAc,CAAC;AAIxD,OAAO,EAEL,0BAA0B,EAC1B,gBAAgB,EACjB,MAAM,wBAAwB,CAAC;AAEhC,wBAAsB,cAAc,CAClC,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACtB,kBAAkB,EAAE,MAAM,EAC1B,IAAI,EAAE,SAAS,CAAC,QAAQ,GACvB,OAAO,CAAC,CAAC,gBAAgB,EAAE,aAAa,EAAE,CAAC,CAAC,CAyB9C;AAED,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,SAAS,CAAC,QAAQ,EACxB,kBAAkB,EAAE,MAAM,EAC1B,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,CAAC,0BAA0B,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC,CAmC1D"}
@@ -2,19 +2,17 @@
2
2
  // Licensed under the MIT license.
3
3
  "use strict";
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.generateCommands = exports.generateParametersFromSchema = exports.updateManifest = void 0;
5
+ exports.generateCommands = exports.updateManifest = void 0;
6
6
  const tslib_1 = require("tslib");
7
- const interfaces_1 = require("./interfaces");
8
7
  const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
9
8
  const path_1 = tslib_1.__importDefault(require("path"));
9
+ const interfaces_1 = require("./interfaces");
10
10
  const utils_1 = require("./utils");
11
11
  const specParserError_1 = require("./specParserError");
12
12
  const constants_1 = require("./constants");
13
- const util_1 = require("util");
14
13
  async function updateManifest(manifestPath, outputSpecPath, adaptiveCardFolder, spec) {
15
14
  var _a;
16
15
  try {
17
- // TODO: manifest interface can be updated when manifest parser library is ready
18
16
  const originalManifest = await fs_extra_1.default.readJSON(manifestPath);
19
17
  const [commands, warnings] = await generateCommands(spec, adaptiveCardFolder, manifestPath);
20
18
  const ComposeExtension = {
@@ -37,43 +35,7 @@ async function updateManifest(manifestPath, outputSpecPath, adaptiveCardFolder,
37
35
  }
38
36
  }
39
37
  exports.updateManifest = updateManifest;
40
- function generateParametersFromSchema(schema, name, isRequired = false) {
41
- var _a, _b;
42
- const requiredParams = [];
43
- const optionalParams = [];
44
- if (schema.type === "string" ||
45
- schema.type === "integer" ||
46
- schema.type === "boolean" ||
47
- schema.type === "number") {
48
- const parameter = {
49
- name: name,
50
- title: utils_1.updateFirstLetter(name),
51
- description: (_a = schema.description) !== null && _a !== void 0 ? _a : "",
52
- };
53
- if (isRequired && schema.default === undefined) {
54
- requiredParams.push(parameter);
55
- }
56
- else {
57
- optionalParams.push(parameter);
58
- }
59
- }
60
- else if (schema.type === "object") {
61
- const { properties } = schema;
62
- for (const property in properties) {
63
- let isRequired = false;
64
- if (schema.required && ((_b = schema.required) === null || _b === void 0 ? void 0 : _b.indexOf(property)) >= 0) {
65
- isRequired = true;
66
- }
67
- const [requiredP, optionalP] = generateParametersFromSchema(properties[property], property, isRequired);
68
- requiredParams.push(...requiredP);
69
- optionalParams.push(...optionalP);
70
- }
71
- }
72
- return [requiredParams, optionalParams];
73
- }
74
- exports.generateParametersFromSchema = generateParametersFromSchema;
75
38
  async function generateCommands(spec, adaptiveCardFolder, manifestPath) {
76
- var _a, _b;
77
39
  const paths = spec.paths;
78
40
  const commands = [];
79
41
  const warnings = [];
@@ -87,66 +49,15 @@ async function generateCommands(spec, adaptiveCardFolder, manifestPath) {
87
49
  if (method === constants_1.ConstantString.PostMethod || method === constants_1.ConstantString.GetMethod) {
88
50
  const operationItem = operations[method];
89
51
  if (operationItem) {
90
- const requiredParams = [];
91
- const optionalParams = [];
92
- const paramObject = operationItem.parameters;
93
- if (paramObject) {
94
- paramObject.forEach((param) => {
95
- var _a;
96
- const parameter = {
97
- name: param.name,
98
- title: utils_1.updateFirstLetter(param.name),
99
- description: (_a = param.description) !== null && _a !== void 0 ? _a : "",
100
- };
101
- const schema = param.schema;
102
- if (param.in !== "header" && param.in !== "cookie") {
103
- if (param.required && (schema === null || schema === void 0 ? void 0 : schema.default) === undefined) {
104
- requiredParams.push(parameter);
105
- }
106
- else {
107
- optionalParams.push(parameter);
108
- }
109
- }
110
- });
111
- }
112
- if (operationItem.requestBody) {
113
- const requestBody = operationItem.requestBody;
114
- const requestJson = requestBody.content["application/json"];
115
- if (Object.keys(requestJson).length !== 0) {
116
- const schema = requestJson.schema;
117
- const [requiredP, optionalP] = generateParametersFromSchema(schema, "requestBody", requestBody.required);
118
- requiredParams.push(...requiredP);
119
- optionalParams.push(...optionalP);
120
- }
52
+ const [command, warning] = utils_1.parseApiInfo(operationItem);
53
+ const adaptiveCardPath = path_1.default.join(adaptiveCardFolder, command.id + ".json");
54
+ command.apiResponseRenderingTemplateFile = (await fs_extra_1.default.pathExists(adaptiveCardPath))
55
+ ? utils_1.getRelativePath(manifestPath, adaptiveCardPath)
56
+ : "";
57
+ if (warning) {
58
+ warnings.push(warning);
121
59
  }
122
- const operationId = operationItem.operationId;
123
- const adaptiveCardPath = path_1.default.join(adaptiveCardFolder, operationId + ".json");
124
- const parameters = [];
125
- if (requiredParams.length != 0) {
126
- parameters.push(...requiredParams);
127
- }
128
- else {
129
- parameters.push(optionalParams[0]);
130
- }
131
- const command = {
132
- context: ["compose"],
133
- type: "query",
134
- title: (_a = operationItem.summary) !== null && _a !== void 0 ? _a : "",
135
- id: operationId,
136
- parameters: parameters,
137
- description: (_b = operationItem.description) !== null && _b !== void 0 ? _b : "",
138
- apiResponseRenderingTemplateFile: (await fs_extra_1.default.pathExists(adaptiveCardPath))
139
- ? utils_1.getRelativePath(manifestPath, adaptiveCardPath)
140
- : "",
141
- };
142
60
  commands.push(command);
143
- if (requiredParams.length === 0 && optionalParams.length > 1) {
144
- warnings.push({
145
- type: interfaces_1.WarningType.OperationOnlyContainsOptionalParam,
146
- content: util_1.format(constants_1.ConstantString.OperationOnlyContainsOptionalParam, operationId),
147
- data: operationId,
148
- });
149
- }
150
61
  }
151
62
  }
152
63
  }
@@ -1 +1 @@
1
- {"version":3,"file":"manifestUpdater.js","sourceRoot":"","sources":["../../../src/common/spec-parser/manifestUpdater.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manifestUpdater.js","sourceRoot":"","sources":["../../../src/common/spec-parser/manifestUpdater.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,YAAY,CAAC;;;;AAGb,gEAA0B;AAC1B,wDAAwB;AACxB,6CAAwD;AACxD,mCAAwD;AACxD,uDAAoD;AACpD,2CAA6C;AAOtC,KAAK,UAAU,cAAc,CAClC,YAAoB,EACpB,cAAsB,EACtB,kBAA0B,EAC1B,IAAwB;;IAExB,IAAI;QACF,MAAM,gBAAgB,GAAqB,MAAM,kBAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAE3E,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC;QAC5F,MAAM,gBAAgB,GAAsB;YAC1C,oBAAoB,EAAE,UAAU;YAChC,oBAAoB,EAAE,uBAAe,CAAC,YAAY,EAAE,cAAc,CAAC;YACnE,QAAQ,EAAE,QAAQ;SACnB,CAAC;QAEF,MAAM,WAAW,GAAG;YAClB,WAAW,EAAE;gBACX,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;gBACtB,IAAI,EAAE,MAAA,IAAI,CAAC,IAAI,CAAC,WAAW,mCAAI,gBAAgB,CAAC,WAAW,CAAC,IAAI;aACjE;YACD,iBAAiB,EAAE,CAAC,gBAAgB,CAAC;SACtC,CAAC;QAEF,MAAM,eAAe,mCAAQ,gBAAgB,GAAK,WAAW,CAAE,CAAC;QAEhE,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;KACpC;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAI,iCAAe,CAAE,GAAa,CAAC,QAAQ,EAAE,EAAE,sBAAS,CAAC,oBAAoB,CAAC,CAAC;KACtF;AACH,CAAC;AA9BD,wCA8BC;AAEM,KAAK,UAAU,gBAAgB,CACpC,IAAwB,EACxB,kBAA0B,EAC1B,YAAoB;IAEpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACzB,MAAM,QAAQ,GAAiC,EAAE,CAAC;IAClD,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,IAAI,KAAK,EAAE;QACT,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE;YAC3B,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;YAChC,IAAI,QAAQ,EAAE;gBACZ,MAAM,UAAU,GAAG,QAAQ,CAAC;gBAE5B,6CAA6C;gBAC7C,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE;oBAC/B,IAAI,MAAM,KAAK,0BAAc,CAAC,UAAU,IAAI,MAAM,KAAK,0BAAc,CAAC,SAAS,EAAE;wBAC/E,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;wBACzC,IAAI,aAAa,EAAE;4BACjB,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,oBAAY,CAAC,aAAa,CAAC,CAAC;4BAEvD,MAAM,gBAAgB,GAAG,cAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC;4BAC7E,OAAO,CAAC,gCAAgC,GAAG,CAAC,MAAM,kBAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;gCAChF,CAAC,CAAC,uBAAe,CAAC,YAAY,EAAE,gBAAgB,CAAC;gCACjD,CAAC,CAAC,EAAE,CAAC;4BAEP,IAAI,OAAO,EAAE;gCACX,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;6BACxB;4BAED,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBACxB;qBACF;iBACF;aACF;SACF;KACF;IAED,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAC9B,CAAC;AAvCD,4CAuCC"}
@@ -1,3 +1,3 @@
1
1
  import { OpenAPIV3 } from "openapi-types";
2
- export declare function specFilter(filter: string[], unResolveSpec: OpenAPIV3.Document, resolvedSpec: OpenAPIV3.Document): OpenAPIV3.Document;
2
+ export declare function specFilter(filter: string[], unResolveSpec: OpenAPIV3.Document, resolvedSpec: OpenAPIV3.Document, allowMissingId: boolean): OpenAPIV3.Document;
3
3
  //# sourceMappingURL=specFilter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"specFilter.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/specFilter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAM1C,wBAAgB,UAAU,CACxB,MAAM,EAAE,MAAM,EAAE,EAChB,aAAa,EAAE,SAAS,CAAC,QAAQ,EACjC,YAAY,EAAE,SAAS,CAAC,QAAQ,GAC/B,SAAS,CAAC,QAAQ,CAkCpB"}
1
+ {"version":3,"file":"specFilter.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/specFilter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAM1C,wBAAgB,UAAU,CACxB,MAAM,EAAE,MAAM,EAAE,EAChB,aAAa,EAAE,SAAS,CAAC,QAAQ,EACjC,YAAY,EAAE,SAAS,CAAC,QAAQ,EAChC,cAAc,EAAE,OAAO,GACtB,SAAS,CAAC,QAAQ,CAkCpB"}
@@ -7,14 +7,14 @@ const utils_1 = require("./utils");
7
7
  const specParserError_1 = require("./specParserError");
8
8
  const interfaces_1 = require("./interfaces");
9
9
  const constants_1 = require("./constants");
10
- function specFilter(filter, unResolveSpec, resolvedSpec) {
10
+ function specFilter(filter, unResolveSpec, resolvedSpec, allowMissingId) {
11
11
  try {
12
12
  const newSpec = Object.assign({}, unResolveSpec);
13
13
  const newPaths = {};
14
14
  for (const filterItem of filter) {
15
15
  const [method, path] = filterItem.split(" ");
16
16
  const methodName = method.toLowerCase();
17
- if (!utils_1.isSupportedApi(methodName, path, resolvedSpec)) {
17
+ if (!utils_1.isSupportedApi(methodName, path, resolvedSpec, allowMissingId)) {
18
18
  continue;
19
19
  }
20
20
  if (!newPaths[path]) {
@@ -1 +1 @@
1
- {"version":3,"file":"specFilter.js","sourceRoot":"","sources":["../../../src/common/spec-parser/specFilter.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,YAAY,CAAC;;;AAGb,mCAAiE;AACjE,uDAAoD;AACpD,6CAAyC;AACzC,2CAA6C;AAE7C,SAAgB,UAAU,CACxB,MAAgB,EAChB,aAAiC,EACjC,YAAgC;IAEhC,IAAI;QACF,MAAM,OAAO,qBAAQ,aAAa,CAAE,CAAC;QACrC,MAAM,QAAQ,GAA0B,EAAE,CAAC;QAC3C,KAAK,MAAM,UAAU,IAAI,MAAM,EAAE;YAC/B,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC7C,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;YAExC,IAAI,CAAC,sBAAc,CAAC,UAAU,EAAE,IAAI,EAAE,YAAY,CAAC,EAAE;gBACnD,SAAS;aACV;YAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBACnB,QAAQ,CAAC,IAAI,CAAC,qBAAQ,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAE,CAAC;gBAClD,KAAK,MAAM,CAAC,IAAI,0BAAc,CAAC,mBAAmB,EAAE;oBAClD,OAAQ,QAAQ,CAAC,IAAI,CAAS,CAAC,CAAC,CAAC,CAAC;iBACnC;aACF;YAEA,QAAQ,CAAC,IAAI,CAAS,CAAC,UAAU,CAAC,GAAI,aAAa,CAAC,KAAK,CAAC,IAAI,CAAS,CAAC,UAAU,CAAC,CAAC;YAErF,iCAAiC;YACjC,IAAI,CAAE,QAAQ,CAAC,IAAI,CAAS,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE;gBACnD,QAAQ,CAAC,IAAI,CAAS,CAAC,UAAU,CAAC,CAAC,WAAW,GAAG,GAAG,UAAU,GAAG,8BAAsB,CACtF,IAAI,CACL,EAAE,CAAC;aACL;SACF;QAED,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC;QACzB,OAAO,OAAO,CAAC;KAChB;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAI,iCAAe,CAAE,GAAa,CAAC,QAAQ,EAAE,EAAE,sBAAS,CAAC,gBAAgB,CAAC,CAAC;KAClF;AACH,CAAC;AAtCD,gCAsCC"}
1
+ {"version":3,"file":"specFilter.js","sourceRoot":"","sources":["../../../src/common/spec-parser/specFilter.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,YAAY,CAAC;;;AAGb,mCAAiE;AACjE,uDAAoD;AACpD,6CAAyC;AACzC,2CAA6C;AAE7C,SAAgB,UAAU,CACxB,MAAgB,EAChB,aAAiC,EACjC,YAAgC,EAChC,cAAuB;IAEvB,IAAI;QACF,MAAM,OAAO,qBAAQ,aAAa,CAAE,CAAC;QACrC,MAAM,QAAQ,GAA0B,EAAE,CAAC;QAC3C,KAAK,MAAM,UAAU,IAAI,MAAM,EAAE;YAC/B,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC7C,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;YAExC,IAAI,CAAC,sBAAc,CAAC,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,cAAc,CAAC,EAAE;gBACnE,SAAS;aACV;YAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBACnB,QAAQ,CAAC,IAAI,CAAC,qBAAQ,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAE,CAAC;gBAClD,KAAK,MAAM,CAAC,IAAI,0BAAc,CAAC,mBAAmB,EAAE;oBAClD,OAAQ,QAAQ,CAAC,IAAI,CAAS,CAAC,CAAC,CAAC,CAAC;iBACnC;aACF;YAEA,QAAQ,CAAC,IAAI,CAAS,CAAC,UAAU,CAAC,GAAI,aAAa,CAAC,KAAK,CAAC,IAAI,CAAS,CAAC,UAAU,CAAC,CAAC;YAErF,iCAAiC;YACjC,IAAI,CAAE,QAAQ,CAAC,IAAI,CAAS,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE;gBACnD,QAAQ,CAAC,IAAI,CAAS,CAAC,UAAU,CAAC,CAAC,WAAW,GAAG,GAAG,UAAU,GAAG,8BAAsB,CACtF,IAAI,CACL,EAAE,CAAC;aACL;SACF;QAED,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC;QACzB,OAAO,OAAO,CAAC;KAChB;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAI,iCAAe,CAAE,GAAa,CAAC,QAAQ,EAAE,EAAE,sBAAS,CAAC,gBAAgB,CAAC,CAAC;KAClF;AACH,CAAC;AAvCD,gCAuCC"}
@@ -1,26 +1,31 @@
1
1
  import SwaggerParser from "@apidevtools/swagger-parser";
2
- import { GenerateResult, ValidateResult } from "./interfaces";
2
+ import { OpenAPIV3 } from "openapi-types";
3
+ import { APIInfo, GenerateResult, ParseOptions, ValidateResult } from "./interfaces";
3
4
  /**
4
5
  * A class that parses an OpenAPI specification file and provides methods to validate, list, and generate artifacts.
5
6
  */
6
7
  export declare class SpecParser {
7
- readonly specPath: string;
8
+ readonly pathOrSpec: string | OpenAPIV3.Document;
8
9
  readonly parser: SwaggerParser;
10
+ readonly options: ParseOptions;
9
11
  private apiMap;
10
12
  private spec;
11
13
  private unResolveSpec;
12
14
  private isSwaggerFile;
15
+ private defaultOptions;
13
16
  /**
14
17
  * Creates a new instance of the SpecParser class.
15
- * @param path The URL or file path of the OpenAPI specification file. The OpenAPI specification file must have a version of 3.0 or higher.
18
+ * @param pathOrDoc The path to the OpenAPI specification file or the OpenAPI specification object.
19
+ * @param options The options for parsing the OpenAPI specification file.
16
20
  */
17
- constructor(path: string);
21
+ constructor(pathOrDoc: string | OpenAPIV3.Document, options?: ParseOptions);
18
22
  /**
19
23
  * Validates the OpenAPI specification file and returns a validation result.
20
24
  *
21
25
  * @returns A validation result object that contains information about any errors or warnings in the specification file.
22
26
  */
23
27
  validate(): Promise<ValidateResult>;
28
+ listSupportedAPIInfo(): Promise<APIInfo[]>;
24
29
  /**
25
30
  * Lists all the OpenAPI operations in the specification file.
26
31
  * @returns A string array that represents the HTTP method and path of each operation, such as ['GET /pets/{petId}', 'GET /user/{userId}']
@@ -41,6 +46,6 @@ export declare class SpecParser {
41
46
  */
42
47
  generate(manifestPath: string, filter: string[], outputSpecPath: string, adaptiveCardFolder: string, signal?: AbortSignal): Promise<GenerateResult>;
43
48
  private loadSpec;
44
- private getAllSupportedApi;
49
+ private getAllSupportedAPIs;
45
50
  }
46
51
  //# sourceMappingURL=specParser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"specParser.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/specParser.ts"],"names":[],"mappings":"AAKA,OAAO,aAAa,MAAM,6BAA6B,CAAC;AAIxD,OAAO,EAIL,cAAc,EACd,cAAc,EAIf,MAAM,cAAc,CAAC;AAWtB;;GAEG;AACH,qBAAa,UAAU;IACrB,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,MAAM,EAAE,aAAa,CAAC;IAEtC,OAAO,CAAC,MAAM,CAA0D;IACxE,OAAO,CAAC,IAAI,CAAiC;IAC7C,OAAO,CAAC,aAAa,CAAiC;IACtD,OAAO,CAAC,aAAa,CAAsB;IAE3C;;;OAGG;gBACS,IAAI,EAAE,MAAM;IAKxB;;;;OAIG;IACG,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;IAsFzC;;;;OAIG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAU/B;;;OAGG;IACG,gBAAgB,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAqBtD;;;;;;OAMG;IACG,QAAQ,CACZ,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,EAAE,EAChB,cAAc,EAAE,MAAM,EACtB,kBAAkB,EAAE,MAAM,EAC1B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC;YA2EZ,QAAQ;IAetB,OAAO,CAAC,kBAAkB;CAqB3B"}
1
+ {"version":3,"file":"specParser.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/specParser.ts"],"names":[],"mappings":"AAIA,OAAO,aAAa,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAK1C,OAAO,EACL,OAAO,EAEP,cAAc,EACd,YAAY,EACZ,cAAc,EAGf,MAAM,cAAc,CAAC;AAStB;;GAEG;AACH,qBAAa,UAAU;IACrB,SAAgB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC;IACxD,SAAgB,MAAM,EAAE,aAAa,CAAC;IACtC,SAAgB,OAAO,EAAE,YAAY,CAAC;IAEtC,OAAO,CAAC,MAAM,CAA0D;IACxE,OAAO,CAAC,IAAI,CAAiC;IAC7C,OAAO,CAAC,aAAa,CAAiC;IACtD,OAAO,CAAC,aAAa,CAAsB;IAE3C,OAAO,CAAC,cAAc,CAGpB;IAEF;;;;OAIG;gBACS,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,YAAY;IAS1E;;;;OAIG;IACG,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;IA8BnC,oBAAoB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAIhD;;;;OAIG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAU/B;;;OAGG;IACG,gBAAgB,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAqBtD;;;;;;OAMG;IACG,QAAQ,CACZ,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,EAAE,EAChB,cAAc,EAAE,MAAM,EACtB,kBAAkB,EAAE,MAAM,EAC1B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC;YAgFZ,QAAQ;IAetB,OAAO,CAAC,mBAAmB;CAU5B"}
@@ -4,19 +4,18 @@
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.SpecParser = void 0;
6
6
  const tslib_1 = require("tslib");
7
- const util = tslib_1.__importStar(require("util"));
8
7
  const swagger_parser_1 = tslib_1.__importDefault(require("@apidevtools/swagger-parser"));
9
- const specParserError_1 = require("./specParserError");
10
8
  const swagger2openapi_1 = tslib_1.__importDefault(require("swagger2openapi"));
11
- const interfaces_1 = require("./interfaces");
12
- const constants_1 = require("./constants");
13
9
  const js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
14
10
  const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
11
+ const path_1 = tslib_1.__importDefault(require("path"));
12
+ const interfaces_1 = require("./interfaces");
13
+ const constants_1 = require("./constants");
14
+ const specParserError_1 = require("./specParserError");
15
15
  const specFilter_1 = require("./specFilter");
16
16
  const utils_1 = require("./utils");
17
17
  const manifestUpdater_1 = require("./manifestUpdater");
18
18
  const adaptiveCardGenerator_1 = require("./adaptiveCardGenerator");
19
- const path_1 = tslib_1.__importDefault(require("path"));
20
19
  const adaptiveCardWrapper_1 = require("./adaptiveCardWrapper");
21
20
  /**
22
21
  * A class that parses an OpenAPI specification file and provides methods to validate, list, and generate artifacts.
@@ -24,11 +23,17 @@ const adaptiveCardWrapper_1 = require("./adaptiveCardWrapper");
24
23
  class SpecParser {
25
24
  /**
26
25
  * Creates a new instance of the SpecParser class.
27
- * @param path The URL or file path of the OpenAPI specification file. The OpenAPI specification file must have a version of 3.0 or higher.
26
+ * @param pathOrDoc The path to the OpenAPI specification file or the OpenAPI specification object.
27
+ * @param options The options for parsing the OpenAPI specification file.
28
28
  */
29
- constructor(path) {
30
- this.specPath = path;
29
+ constructor(pathOrDoc, options) {
30
+ this.defaultOptions = {
31
+ allowMissingId: true,
32
+ allowSwagger: true,
33
+ };
34
+ this.pathOrSpec = pathOrDoc;
31
35
  this.parser = new swagger_parser_1.default();
36
+ this.options = Object.assign(Object.assign({}, this.defaultOptions), (options !== null && options !== void 0 ? options : {}));
32
37
  }
33
38
  /**
34
39
  * Validates the OpenAPI specification file and returns a validation result.
@@ -37,80 +42,36 @@ class SpecParser {
37
42
  */
38
43
  async validate() {
39
44
  try {
40
- const errors = [];
41
- const warnings = [];
42
45
  try {
43
46
  await this.loadSpec();
44
47
  await this.parser.validate(this.spec);
45
48
  }
46
49
  catch (e) {
47
- // Spec not valid
48
- errors.push({ type: interfaces_1.ErrorType.SpecNotValid, content: e.toString() });
49
50
  return {
50
51
  status: interfaces_1.ValidationStatus.Error,
51
- warnings,
52
- errors,
52
+ warnings: [],
53
+ errors: [{ type: interfaces_1.ErrorType.SpecNotValid, content: e.toString() }],
53
54
  };
54
55
  }
55
- if (this.isSwaggerFile) {
56
- warnings.push({
57
- type: interfaces_1.WarningType.ConvertSwaggerToOpenAPI,
58
- content: constants_1.ConstantString.ConvertSwaggerToOpenAPI,
59
- });
60
- }
61
- // Server validation
62
- const serverErrors = utils_1.validateServer(this.spec);
63
- errors.push(...serverErrors);
64
- // Remote reference not supported
65
- const refPaths = this.parser.$refs.paths();
66
- // refPaths [0] is the current spec file path
67
- if (refPaths.length > 1) {
68
- errors.push({
69
- type: interfaces_1.ErrorType.RemoteRefNotSupported,
70
- content: util.format(constants_1.ConstantString.RemoteRefNotSupported, refPaths.join(", ")),
71
- data: refPaths,
72
- });
73
- }
74
- // No supported API
75
- const apiMap = this.getAllSupportedApi(this.spec);
76
- if (Object.keys(apiMap).length === 0) {
77
- errors.push({
78
- type: interfaces_1.ErrorType.NoSupportedApi,
79
- content: constants_1.ConstantString.NoSupportedApi,
80
- });
81
- }
82
- // OperationId missing
83
- const apisMissingOperationId = [];
84
- for (const key in apiMap) {
85
- const pathObjectItem = apiMap[key];
86
- if (!pathObjectItem.operationId) {
87
- apisMissingOperationId.push(key);
88
- }
89
- }
90
- if (apisMissingOperationId.length > 0) {
91
- warnings.push({
92
- type: interfaces_1.WarningType.OperationIdMissing,
93
- content: util.format(constants_1.ConstantString.MissingOperationId, apisMissingOperationId.join(", ")),
94
- data: apisMissingOperationId,
95
- });
96
- }
97
- let status = interfaces_1.ValidationStatus.Valid;
98
- if (warnings.length > 0 && errors.length === 0) {
99
- status = interfaces_1.ValidationStatus.Warning;
100
- }
101
- else if (errors.length > 0) {
102
- status = interfaces_1.ValidationStatus.Error;
56
+ if (!this.options.allowSwagger && this.isSwaggerFile) {
57
+ return {
58
+ status: interfaces_1.ValidationStatus.Error,
59
+ warnings: [],
60
+ errors: [
61
+ { type: interfaces_1.ErrorType.SwaggerNotSupported, content: constants_1.ConstantString.SwaggerNotSupported },
62
+ ],
63
+ };
103
64
  }
104
- return {
105
- status,
106
- warnings,
107
- errors,
108
- };
65
+ return utils_1.validateSpec(this.spec, this.parser, !!this.isSwaggerFile);
109
66
  }
110
67
  catch (err) {
111
68
  throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.ValidateFailed);
112
69
  }
113
70
  }
71
+ // eslint-disable-next-line @typescript-eslint/require-await
72
+ async listSupportedAPIInfo() {
73
+ throw new Error("Method not implemented.");
74
+ }
114
75
  /**
115
76
  * Lists all the OpenAPI operations in the specification file.
116
77
  * @returns A string array that represents the HTTP method and path of each operation, such as ['GET /pets/{petId}', 'GET /user/{userId}']
@@ -119,7 +80,7 @@ class SpecParser {
119
80
  async list() {
120
81
  try {
121
82
  await this.loadSpec();
122
- const apiMap = this.getAllSupportedApi(this.spec);
83
+ const apiMap = this.getAllSupportedAPIs(this.spec);
123
84
  return Array.from(Object.keys(apiMap));
124
85
  }
125
86
  catch (err) {
@@ -133,7 +94,7 @@ class SpecParser {
133
94
  async listOperationMap() {
134
95
  try {
135
96
  await this.loadSpec();
136
- const apiMap = this.getAllSupportedApi(this.spec);
97
+ const apiMap = this.getAllSupportedAPIs(this.spec);
137
98
  const operationMap = new Map();
138
99
  for (const key in apiMap) {
139
100
  const pathObjectItem = apiMap[key];
@@ -171,7 +132,7 @@ class SpecParser {
171
132
  if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
172
133
  throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
173
134
  }
174
- const newUnResolvedSpec = specFilter_1.specFilter(filter, this.unResolveSpec, this.spec);
135
+ const newUnResolvedSpec = specFilter_1.specFilter(filter, this.unResolveSpec, this.spec, this.options.allowMissingId);
175
136
  let resultStr;
176
137
  if (outputSpecPath.endsWith(".yaml") || outputSpecPath.endsWith(".yml")) {
177
138
  resultStr = js_yaml_1.default.dump(newUnResolvedSpec);
@@ -222,7 +183,7 @@ class SpecParser {
222
183
  }
223
184
  async loadSpec() {
224
185
  if (!this.spec) {
225
- this.unResolveSpec = (await this.parser.parse(this.specPath));
186
+ this.unResolveSpec = (await this.parser.parse(this.pathOrSpec));
226
187
  // Convert swagger 2.0 to openapi 3.0
227
188
  if (!this.unResolveSpec.openapi && this.unResolveSpec.swagger === "2.0") {
228
189
  const specObj = await swagger2openapi_1.default.convert(this.unResolveSpec, {});
@@ -233,22 +194,11 @@ class SpecParser {
233
194
  this.spec = (await this.parser.dereference(clonedUnResolveSpec));
234
195
  }
235
196
  }
236
- getAllSupportedApi(spec) {
197
+ getAllSupportedAPIs(spec) {
237
198
  if (this.apiMap !== undefined) {
238
199
  return this.apiMap;
239
200
  }
240
- const paths = spec.paths;
241
- const result = {};
242
- for (const path in paths) {
243
- const methods = paths[path];
244
- for (const method in methods) {
245
- // For developer preview, only support GET operation with only 1 parameter without auth
246
- if (utils_1.isSupportedApi(method, path, spec)) {
247
- const operationObject = methods[method];
248
- result[`${method.toUpperCase()} ${path}`] = operationObject;
249
- }
250
- }
251
- }
201
+ const result = utils_1.listSupportedAPIs(spec, this.options.allowMissingId);
252
202
  this.apiMap = result;
253
203
  return result;
254
204
  }
@@ -1 +1 @@
1
- {"version":3,"file":"specParser.js","sourceRoot":"","sources":["../../../src/common/spec-parser/specParser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"specParser.js","sourceRoot":"","sources":["../../../src/common/spec-parser/specParser.ts"],"names":[],"mappings":"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"}