@microsoft/teamsfx-core 3.0.15-beta.2026072312.0 → 3.0.15

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 (343) hide show
  1. package/build/client/aadAppClient.d.ts.map +1 -1
  2. package/build/client/aadAppClient.js +6 -6
  3. package/build/client/aadAppClient.js.map +1 -1
  4. package/build/common/featureFlags.d.ts +5 -0
  5. package/build/common/featureFlags.d.ts.map +1 -1
  6. package/build/common/featureFlags.js +5 -0
  7. package/build/common/featureFlags.js.map +1 -1
  8. package/build/common/secretmasker/dict.d.ts.map +1 -1
  9. package/build/common/secretmasker/dict.js +2 -5
  10. package/build/common/secretmasker/dict.js.map +1 -1
  11. package/build/common/secretmasker/feature.js.map +1 -1
  12. package/build/common/templates-config.json +4 -4
  13. package/build/component/coordinator/index.d.ts.map +1 -1
  14. package/build/component/coordinator/index.js.map +1 -1
  15. package/build/component/deps-checker/internal/dotnetChecker.js.map +1 -1
  16. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.d.ts +0 -3
  17. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.d.ts.map +1 -1
  18. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.js +3 -38
  19. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.js.map +1 -1
  20. package/build/component/driver/script/scriptDriver.js +1 -1
  21. package/build/component/driver/script/scriptDriver.js.map +1 -1
  22. package/build/component/driver/teamsApp/create.d.ts.map +1 -1
  23. package/build/component/driver/teamsApp/create.js +3 -3
  24. package/build/component/driver/teamsApp/create.js.map +1 -1
  25. package/build/component/driver/teamsApp/createAppPackage.d.ts +0 -1
  26. package/build/component/driver/teamsApp/createAppPackage.d.ts.map +1 -1
  27. package/build/component/driver/teamsApp/createAppPackage.js +0 -23
  28. package/build/component/driver/teamsApp/createAppPackage.js.map +1 -1
  29. package/build/component/driver/teamsApp/utils/CopilotGptManifestUtils.js.map +1 -1
  30. package/build/component/generator/declarativeAgent/helper.js.map +1 -1
  31. package/build/component/generator/officeAddin/generator.d.ts +0 -1
  32. package/build/component/generator/officeAddin/generator.d.ts.map +1 -1
  33. package/build/component/generator/officeAddin/generator.js +2 -109
  34. package/build/component/generator/officeAddin/generator.js.map +1 -1
  35. package/build/component/generator/openApiSpec/helper.d.ts +3 -2
  36. package/build/component/generator/openApiSpec/helper.d.ts.map +1 -1
  37. package/build/component/generator/openApiSpec/helper.js +56 -6
  38. package/build/component/generator/openApiSpec/helper.js.map +1 -1
  39. package/build/component/generator/templateHelper.d.ts +2 -10
  40. package/build/component/generator/templateHelper.d.ts.map +1 -1
  41. package/build/component/generator/templateHelper.js +3 -16
  42. package/build/component/generator/templateHelper.js.map +1 -1
  43. package/build/component/generator/templates/templateNames.d.ts +0 -2
  44. package/build/component/generator/templates/templateNames.d.ts.map +1 -1
  45. package/build/component/generator/templates/templateNames.js +0 -2
  46. package/build/component/generator/templates/templateNames.js.map +1 -1
  47. package/build/component/generator/utils.d.ts.map +1 -1
  48. package/build/component/generator/utils.js +0 -6
  49. package/build/component/generator/utils.js.map +1 -1
  50. package/build/component/generator/v4TemplateBridge.d.ts +1 -4
  51. package/build/component/generator/v4TemplateBridge.d.ts.map +1 -1
  52. package/build/component/generator/v4TemplateBridge.js +3 -11
  53. package/build/component/generator/v4TemplateBridge.js.map +1 -1
  54. package/build/component/utils/envUtil.d.ts.map +1 -1
  55. package/build/component/utils/envUtil.js +2 -2
  56. package/build/component/utils/envUtil.js.map +1 -1
  57. package/build/component/utils/fileOperation.d.ts.map +1 -1
  58. package/build/component/utils/fileOperation.js +1 -4
  59. package/build/component/utils/fileOperation.js.map +1 -1
  60. package/build/component/utils/mcpAuthScaffolder.d.ts.map +1 -1
  61. package/build/component/utils/mcpAuthScaffolder.js.map +1 -1
  62. package/build/component/utils/mcpToolFetcher.d.ts +72 -1
  63. package/build/component/utils/mcpToolFetcher.d.ts.map +1 -1
  64. package/build/component/utils/mcpToolFetcher.js +227 -1
  65. package/build/component/utils/mcpToolFetcher.js.map +1 -1
  66. package/build/component/utils/odrProvider.d.ts +55 -1
  67. package/build/component/utils/odrProvider.d.ts.map +1 -1
  68. package/build/component/utils/odrProvider.js +101 -1
  69. package/build/component/utils/odrProvider.js.map +1 -1
  70. package/build/core/FxCore.d.ts.map +1 -1
  71. package/build/core/FxCore.declarativeAgent.d.ts.map +1 -1
  72. package/build/core/FxCore.declarativeAgent.js +0 -41
  73. package/build/core/FxCore.declarativeAgent.js.map +1 -1
  74. package/build/core/FxCore.js +5 -3
  75. package/build/core/FxCore.js.map +1 -1
  76. package/build/core/createFrontDoorAdapters.d.ts +25 -1
  77. package/build/core/createFrontDoorAdapters.d.ts.map +1 -1
  78. package/build/core/createFrontDoorAdapters.js +155 -4
  79. package/build/core/createFrontDoorAdapters.js.map +1 -1
  80. package/build/core/createProjectFrontDoor.d.ts +12 -10
  81. package/build/core/createProjectFrontDoor.d.ts.map +1 -1
  82. package/build/core/createProjectFrontDoor.js +106 -141
  83. package/build/core/createProjectFrontDoor.js.map +1 -1
  84. package/build/core/modifyProjectFrontDoor.d.ts +1 -0
  85. package/build/core/modifyProjectFrontDoor.d.ts.map +1 -1
  86. package/build/core/modifyProjectFrontDoor.js +2 -0
  87. package/build/core/modifyProjectFrontDoor.js.map +1 -1
  88. package/build/index.d.ts.map +1 -1
  89. package/build/index.js +0 -2
  90. package/build/index.js.map +1 -1
  91. package/build/question/inputs/AddKnowledgeInputs.d.ts.map +1 -1
  92. package/build/question/inputs/CreateProjectInputs.d.ts +0 -4
  93. package/build/question/inputs/CreateProjectInputs.d.ts.map +1 -1
  94. package/build/question/options/CreateProjectOptions.d.ts.map +1 -1
  95. package/build/question/options/CreateProjectOptions.js +0 -14
  96. package/build/question/options/CreateProjectOptions.js.map +1 -1
  97. package/build/question/other.d.ts.map +1 -1
  98. package/build/question/other.js +1 -2
  99. package/build/question/other.js.map +1 -1
  100. package/build/question/questionNames.d.ts +0 -2
  101. package/build/question/questionNames.d.ts.map +1 -1
  102. package/build/question/questionNames.js +0 -2
  103. package/build/question/questionNames.js.map +1 -1
  104. package/build/question/scaffold/constructNode.d.ts +1 -3
  105. package/build/question/scaffold/constructNode.d.ts.map +1 -1
  106. package/build/question/scaffold/constructNode.js +0 -50
  107. package/build/question/scaffold/constructNode.js.map +1 -1
  108. package/build/question/scaffold/vsc/CapabilityOptions.d.ts +0 -2
  109. package/build/question/scaffold/vsc/CapabilityOptions.d.ts.map +1 -1
  110. package/build/question/scaffold/vsc/CapabilityOptions.js +0 -16
  111. package/build/question/scaffold/vsc/CapabilityOptions.js.map +1 -1
  112. package/build/question/scaffold/vsc/teamsProjectTypeNode.d.ts.map +1 -1
  113. package/build/question/scaffold/vsc/teamsProjectTypeNode.js +7 -0
  114. package/build/question/scaffold/vsc/teamsProjectTypeNode.js.map +1 -1
  115. package/build/v4/buildTarget/parseSelector.d.ts +2 -6
  116. package/build/v4/buildTarget/parseSelector.d.ts.map +1 -1
  117. package/build/v4/buildTarget/parseSelector.js +45 -58
  118. package/build/v4/buildTarget/parseSelector.js.map +1 -1
  119. package/build/v4/buildTarget/resolveBuildTarget.d.ts +7 -21
  120. package/build/v4/buildTarget/resolveBuildTarget.d.ts.map +1 -1
  121. package/build/v4/buildTarget/resolveBuildTarget.js +52 -97
  122. package/build/v4/buildTarget/resolveBuildTarget.js.map +1 -1
  123. package/build/v4/collectInputs/collectInputs.d.ts +9 -50
  124. package/build/v4/collectInputs/collectInputs.d.ts.map +1 -1
  125. package/build/v4/collectInputs/collectInputs.js +91 -274
  126. package/build/v4/collectInputs/collectInputs.js.map +1 -1
  127. package/build/v4/distribution/createQuestions.d.ts.map +1 -1
  128. package/build/v4/distribution/createQuestions.js +29 -2
  129. package/build/v4/distribution/createQuestions.js.map +1 -1
  130. package/build/v4/distribution/declarativePackage.d.ts.map +1 -1
  131. package/build/v4/distribution/declarativePackage.js +30 -2
  132. package/build/v4/distribution/declarativePackage.js.map +1 -1
  133. package/build/v4/expression/evaluateExpression.d.ts +0 -13
  134. package/build/v4/expression/evaluateExpression.d.ts.map +1 -1
  135. package/build/v4/expression/evaluateExpression.js +0 -57
  136. package/build/v4/expression/evaluateExpression.js.map +1 -1
  137. package/build/v4/index.d.ts +0 -7
  138. package/build/v4/index.d.ts.map +1 -1
  139. package/build/v4/index.js +0 -7
  140. package/build/v4/index.js.map +1 -1
  141. package/build/v4/model/dataModel.d.ts +1 -1
  142. package/build/v4/model/dataModel.d.ts.map +1 -1
  143. package/build/v4/pipeline/runScaffoldPipeline.d.ts +4 -20
  144. package/build/v4/pipeline/runScaffoldPipeline.d.ts.map +1 -1
  145. package/build/v4/pipeline/runScaffoldPipeline.js +9 -61
  146. package/build/v4/pipeline/runScaffoldPipeline.js.map +1 -1
  147. package/build/v4/renderContext/buildRenderContext.d.ts.map +1 -1
  148. package/build/v4/renderContext/buildRenderContext.js +2 -1
  149. package/build/v4/renderContext/buildRenderContext.js.map +1 -1
  150. package/build/v4/runtime/inMemoryRuntime.d.ts +1 -4
  151. package/build/v4/runtime/inMemoryRuntime.d.ts.map +1 -1
  152. package/build/v4/runtime/inMemoryRuntime.js +3 -22
  153. package/build/v4/runtime/inMemoryRuntime.js.map +1 -1
  154. package/build/v4/runtime/packageParse.d.ts.map +1 -1
  155. package/build/v4/runtime/packageParse.js +8 -64
  156. package/build/v4/runtime/packageParse.js.map +1 -1
  157. package/build/v4/runtime/realRuntime.d.ts +1 -2
  158. package/build/v4/runtime/realRuntime.d.ts.map +1 -1
  159. package/build/v4/runtime/realRuntime.js +2 -3
  160. package/build/v4/runtime/realRuntime.js.map +1 -1
  161. package/build/v4/runtime/renderMustache.d.ts.map +1 -1
  162. package/build/v4/runtime/renderMustache.js +4 -13
  163. package/build/v4/runtime/renderMustache.js.map +1 -1
  164. package/build/v4/runtime/runtimeRegistry.d.ts +3 -12
  165. package/build/v4/runtime/runtimeRegistry.d.ts.map +1 -1
  166. package/build/v4/runtime/runtimeRegistry.js +17 -123
  167. package/build/v4/runtime/runtimeRegistry.js.map +1 -1
  168. package/build/v4/runtime/scaffold.d.ts +0 -1
  169. package/build/v4/runtime/scaffold.d.ts.map +1 -1
  170. package/build/v4/runtime/scaffold.js +20 -1
  171. package/build/v4/runtime/scaffold.js.map +1 -1
  172. package/build/v4/runtime/steps/daAction.d.ts.map +1 -1
  173. package/build/v4/runtime/steps/daAction.js +111 -3
  174. package/build/v4/runtime/steps/daAction.js.map +1 -1
  175. package/build/v4/runtime/steps/mcpAuth.d.ts +2 -5
  176. package/build/v4/runtime/steps/mcpAuth.d.ts.map +1 -1
  177. package/build/v4/runtime/steps/mcpAuth.js +66 -37
  178. package/build/v4/runtime/steps/mcpAuth.js.map +1 -1
  179. package/build/v4/runtime/steps/mcpLocal.d.ts +4 -0
  180. package/build/v4/runtime/steps/mcpLocal.d.ts.map +1 -1
  181. package/build/v4/runtime/steps/mcpLocal.js +31 -11
  182. package/build/v4/runtime/steps/mcpLocal.js.map +1 -1
  183. package/build/v4/runtime/steps/mcpStatic.d.ts +1 -1
  184. package/build/v4/runtime/steps/mcpStatic.d.ts.map +1 -1
  185. package/build/v4/runtime/steps/mcpStatic.js +32 -14
  186. package/build/v4/runtime/steps/mcpStatic.js.map +1 -1
  187. package/build/v4/runtime/steps/metaOs.d.ts.map +1 -1
  188. package/build/v4/runtime/steps/metaOs.js +51 -39
  189. package/build/v4/runtime/steps/metaOs.js.map +1 -1
  190. package/build/v4/runtime/steps/officeAddin.d.ts.map +1 -1
  191. package/build/v4/runtime/steps/officeAddin.js +12 -7
  192. package/build/v4/runtime/steps/officeAddin.js.map +1 -1
  193. package/build/v4/runtime/steps/openApi.d.ts.map +1 -1
  194. package/build/v4/runtime/steps/openApi.js +555 -47
  195. package/build/v4/runtime/steps/openApi.js.map +1 -1
  196. package/build/v4/surface/createInputs.d.ts +3 -25
  197. package/build/v4/surface/createInputs.d.ts.map +1 -1
  198. package/build/v4/surface/createInputs.js +431 -54
  199. package/build/v4/surface/createInputs.js.map +1 -1
  200. package/build/v4/surface/createSelectorWalk.d.ts +3 -8
  201. package/build/v4/surface/createSelectorWalk.d.ts.map +1 -1
  202. package/build/v4/surface/createSelectorWalk.js +11 -21
  203. package/build/v4/surface/createSelectorWalk.js.map +1 -1
  204. package/build/v4/surface/modifySelectorWalk.d.ts.map +1 -1
  205. package/build/v4/surface/modifySelectorWalk.js +3 -0
  206. package/build/v4/surface/modifySelectorWalk.js.map +1 -1
  207. package/build/v4/surface/uiPromptUI.d.ts.map +1 -1
  208. package/build/v4/surface/uiPromptUI.js +41 -36
  209. package/build/v4/surface/uiPromptUI.js.map +1 -1
  210. package/build/v4/validation/validateTemplatePackage.d.ts +2 -21
  211. package/build/v4/validation/validateTemplatePackage.d.ts.map +1 -1
  212. package/build/v4/validation/validateTemplatePackage.js +31 -155
  213. package/build/v4/validation/validateTemplatePackage.js.map +1 -1
  214. package/package.json +20 -26
  215. package/resource/package.nls.cs.json +0 -1
  216. package/resource/package.nls.de.json +54 -55
  217. package/resource/package.nls.es.json +0 -1
  218. package/resource/package.nls.fr.json +0 -1
  219. package/resource/package.nls.it.json +0 -1
  220. package/resource/package.nls.ja.json +0 -1
  221. package/resource/package.nls.json +0 -2
  222. package/resource/package.nls.ko.json +0 -1
  223. package/resource/package.nls.pl.json +0 -1
  224. package/resource/package.nls.pt-BR.json +0 -1
  225. package/resource/package.nls.ru.json +0 -1
  226. package/resource/package.nls.tr.json +0 -1
  227. package/resource/package.nls.zh-Hans.json +0 -1
  228. package/resource/package.nls.zh-Hant.json +0 -1
  229. package/resource/templates/package.nls.cs.json +2 -9
  230. package/resource/templates/package.nls.de.json +2 -9
  231. package/resource/templates/package.nls.es.json +2 -9
  232. package/resource/templates/package.nls.fr.json +2 -9
  233. package/resource/templates/package.nls.it.json +2 -9
  234. package/resource/templates/package.nls.ja.json +2 -9
  235. package/resource/templates/package.nls.json +3 -16
  236. package/resource/templates/package.nls.ko.json +2 -9
  237. package/resource/templates/package.nls.pl.json +2 -9
  238. package/resource/templates/package.nls.pt-BR.json +2 -9
  239. package/resource/templates/package.nls.ru.json +2 -9
  240. package/resource/templates/package.nls.tr.json +2 -9
  241. package/resource/templates/package.nls.zh-Hans.json +2 -9
  242. package/resource/templates/package.nls.zh-Hant.json +2 -9
  243. package/resource/templates/package.nls.zh-cn.json +1 -7
  244. package/resource/templates/package.nls.zh-tw.json +1 -7
  245. package/templates/configs/local/typescript/.gitignore +1 -0
  246. package/templates/configs/playground/typescript/.gitignore +4 -0
  247. package/templates/fallback/common.zip +0 -0
  248. package/templates/fallback/csharp.zip +0 -0
  249. package/templates/fallback/js.zip +0 -0
  250. package/templates/fallback/python.zip +0 -0
  251. package/templates/fallback/ts.zip +0 -0
  252. package/templates/metadata/allTemplates.json +2 -16
  253. package/templates/metadata.zip +0 -0
  254. package/templates/ui/wizardNode.json +0 -24
  255. package/templates/v4/create-selector.json +5 -12
  256. package/templates/v4/floor.json +1 -1
  257. package/templates/v4/modify-selector.json +6 -1
  258. package/templates/v4/templates-metadata.zip +0 -0
  259. package/templates/v4/templates.zip +0 -0
  260. package/build/common/httpProxy.d.ts +0 -21
  261. package/build/common/httpProxy.d.ts.map +0 -1
  262. package/build/common/httpProxy.js +0 -117
  263. package/build/common/httpProxy.js.map +0 -1
  264. package/build/common/mcpToolFetcher.d.ts +0 -31
  265. package/build/common/mcpToolFetcher.d.ts.map +0 -1
  266. package/build/common/mcpToolFetcher.js +0 -182
  267. package/build/common/mcpToolFetcher.js.map +0 -1
  268. package/build/common/odrProvider.d.ts +0 -43
  269. package/build/common/odrProvider.d.ts.map +0 -1
  270. package/build/common/odrProvider.js +0 -154
  271. package/build/common/odrProvider.js.map +0 -1
  272. package/build/common/openApiParserOptions.d.ts +0 -3
  273. package/build/common/openApiParserOptions.d.ts.map +0 -1
  274. package/build/common/openApiParserOptions.js +0 -61
  275. package/build/common/openApiParserOptions.js.map +0 -1
  276. package/build/v4/distribution/questionFragments.d.ts +0 -11
  277. package/build/v4/distribution/questionFragments.d.ts.map +0 -1
  278. package/build/v4/distribution/questionFragments.js +0 -130
  279. package/build/v4/distribution/questionFragments.js.map +0 -1
  280. package/build/v4/engineVersion.d.ts +0 -7
  281. package/build/v4/engineVersion.d.ts.map +0 -1
  282. package/build/v4/engineVersion.js +0 -12
  283. package/build/v4/engineVersion.js.map +0 -1
  284. package/build/v4/inspection/scaffoldCatalog.d.ts +0 -28
  285. package/build/v4/inspection/scaffoldCatalog.d.ts.map +0 -1
  286. package/build/v4/inspection/scaffoldCatalog.js +0 -66
  287. package/build/v4/inspection/scaffoldCatalog.js.map +0 -1
  288. package/build/v4/inspection/scaffoldMetadataSource.d.ts +0 -6
  289. package/build/v4/inspection/scaffoldMetadataSource.d.ts.map +0 -1
  290. package/build/v4/inspection/scaffoldMetadataSource.js +0 -78
  291. package/build/v4/inspection/scaffoldMetadataSource.js.map +0 -1
  292. package/build/v4/mcp/mcpAuthAction.d.ts +0 -28
  293. package/build/v4/mcp/mcpAuthAction.d.ts.map +0 -1
  294. package/build/v4/mcp/mcpAuthAction.js +0 -162
  295. package/build/v4/mcp/mcpAuthAction.js.map +0 -1
  296. package/build/v4/mcp/mcpAuthScaffold.d.ts +0 -37
  297. package/build/v4/mcp/mcpAuthScaffold.d.ts.map +0 -1
  298. package/build/v4/mcp/mcpAuthScaffold.js +0 -140
  299. package/build/v4/mcp/mcpAuthScaffold.js.map +0 -1
  300. package/build/v4/providers/createOptionsProviders.d.ts +0 -11
  301. package/build/v4/providers/createOptionsProviders.d.ts.map +0 -1
  302. package/build/v4/providers/createOptionsProviders.js +0 -268
  303. package/build/v4/providers/createOptionsProviders.js.map +0 -1
  304. package/build/v4/runtime/generalSensitivityLabel.d.ts +0 -5
  305. package/build/v4/runtime/generalSensitivityLabel.d.ts.map +0 -1
  306. package/build/v4/runtime/generalSensitivityLabel.js +0 -36
  307. package/build/v4/runtime/generalSensitivityLabel.js.map +0 -1
  308. package/build/v4/runtime/steps/daSensitivity.d.ts +0 -14
  309. package/build/v4/runtime/steps/daSensitivity.d.ts.map +0 -1
  310. package/build/v4/runtime/steps/daSensitivity.js +0 -50
  311. package/build/v4/runtime/steps/daSensitivity.js.map +0 -1
  312. package/build/v4/runtime/steps/openApiCustomApi.d.ts +0 -5
  313. package/build/v4/runtime/steps/openApiCustomApi.d.ts.map +0 -1
  314. package/build/v4/runtime/steps/openApiCustomApi.js +0 -385
  315. package/build/v4/runtime/steps/openApiCustomApi.js.map +0 -1
  316. package/build/v4/runtime/withTempDirectory.d.ts +0 -10
  317. package/build/v4/runtime/withTempDirectory.d.ts.map +0 -1
  318. package/build/v4/runtime/withTempDirectory.js +0 -41
  319. package/build/v4/runtime/withTempDirectory.js.map +0 -1
  320. package/build/v4/surface/createFloorTail.d.ts +0 -12
  321. package/build/v4/surface/createFloorTail.d.ts.map +0 -1
  322. package/build/v4/surface/createFloorTail.js +0 -138
  323. package/build/v4/surface/createFloorTail.js.map +0 -1
  324. package/build/v4/surface/localizePrompt.d.ts +0 -11
  325. package/build/v4/surface/localizePrompt.d.ts.map +0 -1
  326. package/build/v4/surface/localizePrompt.js +0 -32
  327. package/build/v4/surface/localizePrompt.js.map +0 -1
  328. package/build/v4/validation/capabilityCatalog.d.ts +0 -8
  329. package/build/v4/validation/capabilityCatalog.d.ts.map +0 -1
  330. package/build/v4/validation/capabilityCatalog.js +0 -61
  331. package/build/v4/validation/capabilityCatalog.js.map +0 -1
  332. package/build/v4/validation/templateArchiveValidation.d.ts +0 -15
  333. package/build/v4/validation/templateArchiveValidation.d.ts.map +0 -1
  334. package/build/v4/validation/templateArchiveValidation.js +0 -297
  335. package/build/v4/validation/templateArchiveValidation.js.map +0 -1
  336. package/build/v4/validators/createInputValidators.d.ts +0 -7
  337. package/build/v4/validators/createInputValidators.d.ts.map +0 -1
  338. package/build/v4/validators/createInputValidators.js +0 -75
  339. package/build/v4/validators/createInputValidators.js.map +0 -1
  340. package/build/v4/validators/mcpCredentialValidators.d.ts +0 -5
  341. package/build/v4/validators/mcpCredentialValidators.d.ts.map +0 -1
  342. package/build/v4/validators/mcpCredentialValidators.js +0 -13
  343. package/build/v4/validators/mcpCredentialValidators.js.map +0 -1
@@ -1,385 +0,0 @@
1
- "use strict";
2
- // Copyright (c) Microsoft Corporation.
3
- // Licensed under the MIT license.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.generateTeamsAiCustomApiFiles = generateTeamsAiCustomApiFiles;
6
- const tslib_1 = require("tslib");
7
- const m365_spec_parser_1 = require("@microsoft/m365-spec-parser");
8
- const teamsfx_api_1 = require("@microsoft/teamsfx-api");
9
- const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
10
- const path_1 = tslib_1.__importDefault(require("path"));
11
- const util = tslib_1.__importStar(require("util"));
12
- const featureFlags_1 = require("../../../common/featureFlags");
13
- const localizeUtils_1 = require("../../../common/localizeUtils");
14
- const constants_1 = require("../../../question/constants");
15
- const supportedLanguages = [constants_1.ProgrammingLanguage.TS, constants_1.ProgrammingLanguage.JS, constants_1.ProgrammingLanguage.PY];
16
- function isRecord(value) {
17
- return typeof value === "object" && value !== null && !Array.isArray(value);
18
- }
19
- function operationId(operation) {
20
- if (!operation.operationId) {
21
- throw new Error("The selected OpenAPI operation has no operationId.");
22
- }
23
- return operation.operationId;
24
- }
25
- function isOperationObject(value) {
26
- return isRecord(value);
27
- }
28
- function parseOperations(spec) {
29
- const operations = [];
30
- for (const [pathUrl, pathItem] of Object.entries(spec.paths ?? {})) {
31
- if (!pathItem) {
32
- continue;
33
- }
34
- for (const method of m365_spec_parser_1.ConstantString.AllOperationMethods) {
35
- const operation = isRecord(pathItem) ? pathItem[method] : undefined;
36
- if (isOperationObject(operation)) {
37
- operations.push({
38
- pathUrl,
39
- method,
40
- operation,
41
- auth: m365_spec_parser_1.Utils.getAuthArray(operation.security, spec).length > 0,
42
- });
43
- }
44
- }
45
- }
46
- return operations;
47
- }
48
- async function updateInstructions(spec, language, appFolder) {
49
- if (!supportedLanguages.includes(language)) {
50
- return;
51
- }
52
- const emptyArgs = `{ "path": null, "body": null, "query": null }`;
53
- const description = spec.info.description ? `. ${spec.info.description}` : ".";
54
- const prompt = `The following is a conversation with an AI assistant.\n` +
55
- `The assistant can help to call APIs for the open api spec file${description}\n` +
56
- `If the API doesn't require parameters, invoke it with default JSON object ${emptyArgs}.\n\n`;
57
- await fs_extra_1.default.writeFile(path_1.default.join(appFolder, "instructions.txt"), prompt, "utf8");
58
- }
59
- function errorMessage(error) {
60
- return error instanceof Error ? error.message : String(error);
61
- }
62
- async function updateAdaptiveCards(operations, language, destinationPath) {
63
- const warnings = [];
64
- if (!supportedLanguages.includes(language)) {
65
- return warnings;
66
- }
67
- const cardsFolder = path_1.default.join(destinationPath, "src", "adaptiveCards");
68
- await fs_extra_1.default.ensureDir(cardsFolder);
69
- for (const item of operations) {
70
- const id = operationId(item.operation);
71
- const name = id.replace(/[^a-zA-Z0-9]/g, "_");
72
- try {
73
- const [card, jsonPath, jsonData, generateWarnings] = m365_spec_parser_1.AdaptiveCardGenerator.generateAdaptiveCard(item.operation, true, 5);
74
- if (jsonPath !== "$" &&
75
- isRecord(card) &&
76
- Array.isArray(card.body) &&
77
- isRecord(card.body[0]) &&
78
- card.body[0].$data) {
79
- card.body[0].$data = `\${${jsonPath}}`;
80
- }
81
- await fs_extra_1.default.writeFile(path_1.default.join(cardsFolder, `${name}.json`), JSON.stringify(card, null, 2));
82
- await fs_extra_1.default.writeFile(path_1.default.join(cardsFolder, `${name}.data.json`), JSON.stringify(jsonData, null, 2));
83
- for (const warning of generateWarnings) {
84
- warnings.push({
85
- type: m365_spec_parser_1.WarningType.GenerateJsonDataFailed,
86
- content: util.format("Failed to create the adaptive card mock data for API '%s': %s. Mitigation: Not required but you can manually add it to the adaptiveCards folder.", id, warning.content),
87
- data: id,
88
- });
89
- }
90
- }
91
- catch (error) {
92
- warnings.push({
93
- type: m365_spec_parser_1.WarningType.GenerateCardFailed,
94
- content: (0, localizeUtils_1.getLocalizedString)("core.copilotPlugin.scaffold.summary.warning.generate.ac.failed", id, errorMessage(error)),
95
- data: id,
96
- });
97
- }
98
- }
99
- return warnings;
100
- }
101
- function filteredSchema(value) {
102
- if (!isRecord(value)) {
103
- return {};
104
- }
105
- const result = {};
106
- if (typeof value.type === "string") {
107
- result.type = value.type;
108
- }
109
- if (typeof value.description === "string") {
110
- result.description = value.description;
111
- }
112
- if (value.type === "object" && isRecord(value.properties)) {
113
- const properties = {};
114
- for (const [name, property] of Object.entries(value.properties)) {
115
- properties[name] = filteredSchema(property);
116
- }
117
- result.properties = properties;
118
- if (Array.isArray(value.required)) {
119
- result.required = value.required.filter((name) => typeof name === "string");
120
- }
121
- }
122
- else if (value.type === "array" && value.items !== undefined) {
123
- result.items = filteredSchema(value.items);
124
- }
125
- return result;
126
- }
127
- function functionParameters(operation) {
128
- const properties = {};
129
- const required = [];
130
- for (const parameter of operation.parameters ?? []) {
131
- if (!isRecord(parameter) ||
132
- typeof parameter.name !== "string" ||
133
- typeof parameter.in !== "string") {
134
- continue;
135
- }
136
- const parameterGroup = properties[parameter.in] ?? {
137
- type: "object",
138
- properties: {},
139
- required: [],
140
- };
141
- const groupProperties = parameterGroup.properties;
142
- const groupRequired = parameterGroup.required;
143
- if (!isRecord(groupProperties) || !Array.isArray(groupRequired)) {
144
- continue;
145
- }
146
- groupProperties[parameter.name] = {
147
- ...filteredSchema(parameter.schema),
148
- description: typeof parameter.description === "string" ? parameter.description : "",
149
- };
150
- if (parameter.required === true) {
151
- groupRequired.push(parameter.name);
152
- if (!required.includes(parameter.in)) {
153
- required.push(parameter.in);
154
- }
155
- }
156
- properties[parameter.in] = parameterGroup;
157
- }
158
- const requestBody = operation.requestBody;
159
- if (isRecord(requestBody) && isRecord(requestBody.content)) {
160
- const jsonContent = requestBody.content["application/json"];
161
- if (isRecord(jsonContent) && isRecord(jsonContent.schema)) {
162
- properties.body = {
163
- ...filteredSchema(jsonContent.schema),
164
- description: typeof requestBody.description === "string" ? requestBody.description : "",
165
- };
166
- if (requestBody.required === true) {
167
- required.push("body");
168
- }
169
- }
170
- }
171
- return { type: "object", properties, required };
172
- }
173
- async function updateFunctions(operations, appFolder) {
174
- const functions = {};
175
- for (const item of operations) {
176
- const id = operationId(item.operation);
177
- functions[id] = {
178
- name: id,
179
- description: item.operation.description ?? item.operation.summary,
180
- parameters: functionParameters(item.operation),
181
- };
182
- }
183
- await fs_extra_1.default.writeFile(path_1.default.join(appFolder, "functions.json"), JSON.stringify(functions, null, 2));
184
- }
185
- const functionDefinitionCode = {
186
- javascript: `.function(
187
- functionDefs.{{operationId}}.name,
188
- functionDefs.{{operationId}}.description,
189
- functionDefs.{{operationId}}.parameters,
190
- async (parameter) => {
191
- const result = await functionHandlers.{{operationId}}Handler(parameter);
192
- if(result) {
193
- await send(result);
194
- return "result showed";
195
- } else {
196
- return "no result";
197
- }
198
- }
199
- )`,
200
- typescript: `.function(
201
- functionDefs.{{operationId}}.name,
202
- functionDefs.{{operationId}}.description,
203
- functionDefs.{{operationId}}.parameters,
204
- async (parameter) => {
205
- const result = await functionHandlers.{{operationId}}Handler(parameter);
206
- if(result) {
207
- await send(result);
208
- return "result showed";
209
- } else {
210
- return "no result";
211
- }
212
- }
213
- )`,
214
- python: `.with_function(
215
- Function(
216
- name=function_defs["{{operationId}}"]["name"],
217
- description=function_defs["{{operationId}}"]["description"],
218
- parameter_schema=function_defs["{{operationId}}"]["parameters"],
219
- handler=make_handler({{operationId}}, ctx)
220
- )
221
- )`,
222
- };
223
- const functionHandlerCode = {
224
- javascript: `const {{operationId}}Handler = async (
225
- parameters
226
- ) => {
227
- const client = await api.getClient();
228
- // Add authentication configuration for the client
229
- const apiPath = client.paths["{{pathUrl}}"];
230
- if (apiPath && apiPath.{{method}}) {
231
- const result = await apiPath.{{method}}(parameters.path, parameters.body, {
232
- params: parameters.query,
233
- });
234
- if (!result || !result.data) {
235
- throw new Error("Get empty result from api call.");
236
- }
237
- const cardName = "{{operationId}}".replace(/[^a-zA-Z0-9]/g, "_");
238
- const cardTemplatePath = path.join(__dirname, '../adaptiveCards', cardName + '.json');
239
- if (await fs.exists(cardTemplatePath)){
240
- const card = generateAdaptiveCard(cardTemplatePath, result);
241
- return card;
242
- } else {
243
- return JSON.stringify(result.data);
244
- }
245
- } else {
246
- return "";
247
- }
248
-
249
- };
250
-
251
- module.exports = { {{operationId}}Handler };`,
252
- typescript: `export const {{operationId}}Handler = async (
253
- parameter: any
254
- ) => {
255
- const client = await api.getClient();
256
- // Add authentication configuration for the client
257
- const apiPath = client.paths["{{pathUrl}}"];
258
- if (apiPath && apiPath.{{method}}) {
259
- const result = await apiPath.{{method}}(parameter.path, parameter.body, {
260
- params: parameter.query,
261
- });
262
- if (!result || !result.data) {
263
- throw new Error("Get empty result from api call.");
264
- }
265
- const cardName = "{{operationId}}".replace(/[^a-zA-Z0-9]/g, "_");
266
- const cardTemplatePath = path.join(__dirname, '../adaptiveCards', cardName + '.json');
267
- if (await fs.exists(cardTemplatePath)){
268
- const card = generateAdaptiveCard(cardTemplatePath, result);
269
- return card;
270
- } else {
271
- return JSON.stringify(result.data);
272
- }
273
- } else {
274
- return "";
275
- }
276
-
277
- };`,
278
- python: `async def {{operationId}}(
279
- parameters,
280
- ):
281
- path = getattr(parameters, "path", {})
282
- body = getattr(parameters, "body", None)
283
- query = getattr(parameters, "query", {}) or {}
284
- resp = client.{{operationId}}(**path, json=body, _headers={}, _params=query, _cookies={})
285
-
286
- if resp.status_code != 200:
287
- return resp.reason
288
- else:
289
- card_template_path = os.path.join(current_dir, 'adaptiveCards/{{operationId}}.json')
290
- if not os.path.exists(card_template_path):
291
- json_resoponse_str = resp.text
292
- return json_resoponse_str
293
- else:
294
- with open(card_template_path) as card_template_file:
295
- adaptive_card_template = card_template_file.read()
296
-
297
- renderer = AdaptiveCardRenderer(adaptive_card_template)
298
-
299
- json_resoponse_str = resp.text
300
- rendered_card_str = renderer.render(json_resoponse_str)
301
- rendered_card_json = json.loads(rendered_card_str)
302
- return AdaptiveCard.model_validate(rendered_card_json)
303
- `,
304
- };
305
- function renderCode(template, item) {
306
- const id = operationId(item.operation);
307
- return template
308
- .replace(/{{operationId}}/g, id)
309
- .replace(/{{pathUrl}}/g, item.pathUrl)
310
- .replace(/{{method}}/g, item.method);
311
- }
312
- async function updateJavaScriptOrTypeScript(operations, language, destinationPath, openapiSpecFileName) {
313
- const isJavaScript = language === constants_1.ProgrammingLanguage.JS;
314
- const appFolder = path_1.default.join(destinationPath, "src", "app");
315
- const appPath = path_1.default.join(appFolder, isJavaScript ? "app.js" : "app.ts");
316
- const handlersPath = path_1.default.join(appFolder, isJavaScript ? "handlers.js" : "handlers.ts");
317
- const definitionTemplate = isJavaScript
318
- ? functionDefinitionCode.javascript
319
- : functionDefinitionCode.typescript;
320
- const handlerTemplate = isJavaScript
321
- ? functionHandlerCode.javascript
322
- : functionHandlerCode.typescript;
323
- const definitions = operations.map((item) => renderCode(definitionTemplate, item));
324
- const handlers = operations.map((item) => {
325
- const withAuth = item.auth
326
- ? handlerTemplate.replace("// Add authentication configuration for the client", "addAuthConfig(client);")
327
- : handlerTemplate.replace("// Add authentication configuration for the client", "");
328
- return renderCode(withAuth, item);
329
- });
330
- const app = await fs_extra_1.default.readFile(appPath, "utf8");
331
- await fs_extra_1.default.writeFile(appPath, app.replace("// Replace with function definition code", `${definitions.join("\n")};`));
332
- const handlersFile = await fs_extra_1.default.readFile(handlersPath, "utf8");
333
- await fs_extra_1.default.writeFile(handlersPath, handlersFile
334
- .replace("{{OPENAPI_SPEC_PATH}}", openapiSpecFileName)
335
- .replace("// Replace with function handler code", handlers.join("\t\t\n")));
336
- }
337
- async function updatePython(operations, destinationPath, openapiSpecFileName) {
338
- const appPath = path_1.default.join(destinationPath, "src", "app.py");
339
- const handlersPath = path_1.default.join(destinationPath, "src", "handlers.py");
340
- const definitions = operations.map((item) => renderCode(functionDefinitionCode.python, item));
341
- const handlers = operations.map((item) => renderCode(functionHandlerCode.python, item));
342
- const operationIds = operations.map((item) => operationId(item.operation));
343
- const app = await fs_extra_1.default.readFile(appPath, "utf8");
344
- await fs_extra_1.default.writeFile(appPath, app
345
- .replace("// Replace with function definition code", `prompt${definitions.join("")}`)
346
- .replace("//Replace with functions to be imported", operationIds.join(", ")));
347
- const handlersFile = await fs_extra_1.default.readFile(handlersPath, "utf8");
348
- await fs_extra_1.default.writeFile(handlersPath, handlersFile
349
- .replace("{{OPENAPI_SPEC_PATH}}", openapiSpecFileName)
350
- .replace("// Replace with function handler code", handlers.join("\t\t\n")));
351
- }
352
- async function updateCode(operations, language, destinationPath, openapiSpecFileName) {
353
- if (language === constants_1.ProgrammingLanguage.PY) {
354
- await updatePython(operations, destinationPath, openapiSpecFileName);
355
- }
356
- else if (language === constants_1.ProgrammingLanguage.JS || language === constants_1.ProgrammingLanguage.TS) {
357
- await updateJavaScriptOrTypeScript(operations, language, destinationPath, openapiSpecFileName);
358
- }
359
- }
360
- async function updatePromptSuggestions(operations, destinationPath) {
361
- const commands = operations
362
- .map((item) => item.operation.summary ?? item.operation.description)
363
- .filter((description) => description !== undefined)
364
- .slice(0, 10)
365
- .map((description) => ({
366
- title: description.slice(0, 32),
367
- description: description.slice(0, 128),
368
- }));
369
- const manifest = await teamsfx_api_1.TeamsManifestWrapper.read(path_1.default.join(destinationPath, teamsfx_api_1.AppPackageFolderName, teamsfx_api_1.ManifestTemplateFileName));
370
- manifest.setFirstBotCommandSuggestions(commands, featureFlags_1.featureFlagManager.getBooleanValue(featureFlags_1.FeatureFlags.CEAEnabled));
371
- await manifest.save();
372
- }
373
- /** Generate the post-render Teams AI files declared by the custom API scenario. */
374
- async function generateTeamsAiCustomApiFiles(spec, language, destinationPath, openapiSpecFileName) {
375
- const appFolder = path_1.default.join(destinationPath, "src", language === constants_1.ProgrammingLanguage.PY ? "" : "app");
376
- await fs_extra_1.default.ensureDir(appFolder);
377
- await updateInstructions(spec, language, appFolder);
378
- const operations = parseOperations(spec);
379
- const warnings = await updateAdaptiveCards(operations, language, destinationPath);
380
- await updateFunctions(operations, appFolder);
381
- await updateCode(operations, language, destinationPath, openapiSpecFileName);
382
- await updatePromptSuggestions(operations, destinationPath);
383
- return warnings;
384
- }
385
- //# sourceMappingURL=openApiCustomApi.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"openApiCustomApi.js","sourceRoot":"","sources":["../../../../src/v4/runtime/steps/openApiCustomApi.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import { FxError } from "@microsoft/teamsfx-api";
2
- import { Result } from "neverthrow";
3
- export type TempDirectoryPhase = "allocate" | "operate" | "cleanup";
4
- export interface TempDirectoryPort {
5
- create(prefix: string): Promise<string>;
6
- remove(directory: string): Promise<void>;
7
- }
8
- /** Run one operation in a disposable directory without allowing filesystem failures to escape Result. */
9
- export declare function withTempDirectory<T>(prefix: string, errorFactory: (phase: TempDirectoryPhase, error: unknown) => FxError, operation: (directory: string) => Promise<Result<T, FxError>>, port?: TempDirectoryPort): Promise<Result<T, FxError>>;
10
- //# sourceMappingURL=withTempDirectory.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"withTempDirectory.d.ts","sourceRoot":"","sources":["../../../src/v4/runtime/withTempDirectory.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAIjD,OAAO,EAAE,MAAM,EAAO,MAAM,YAAY,CAAC;AAEzC,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;AAEpE,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1C;AAOD,yGAAyG;AACzG,wBAAsB,iBAAiB,CAAC,CAAC,EACvC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,EACpE,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,EAC7D,IAAI,GAAE,iBAAyC,GAC9C,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAuB7B"}
@@ -1,41 +0,0 @@
1
- "use strict";
2
- // Copyright (c) Microsoft Corporation.
3
- // Licensed under the MIT license.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.withTempDirectory = withTempDirectory;
6
- const tslib_1 = require("tslib");
7
- const fs = tslib_1.__importStar(require("fs-extra"));
8
- const os = tslib_1.__importStar(require("os"));
9
- const path = tslib_1.__importStar(require("path"));
10
- const neverthrow_1 = require("neverthrow");
11
- const nodeTempDirectoryPort = {
12
- create: (prefix) => fs.mkdtemp(path.join(os.tmpdir(), prefix)),
13
- remove: (directory) => fs.remove(directory),
14
- };
15
- /** Run one operation in a disposable directory without allowing filesystem failures to escape Result. */
16
- async function withTempDirectory(prefix, errorFactory, operation, port = nodeTempDirectoryPort) {
17
- let directory;
18
- try {
19
- directory = await port.create(prefix);
20
- }
21
- catch (error) {
22
- return (0, neverthrow_1.err)(errorFactory("allocate", error));
23
- }
24
- let outcome;
25
- try {
26
- outcome = await operation(directory);
27
- }
28
- catch (error) {
29
- outcome = (0, neverthrow_1.err)(errorFactory("operate", error));
30
- }
31
- try {
32
- await port.remove(directory);
33
- }
34
- catch (error) {
35
- if (outcome.isOk()) {
36
- return (0, neverthrow_1.err)(errorFactory("cleanup", error));
37
- }
38
- }
39
- return outcome;
40
- }
41
- //# sourceMappingURL=withTempDirectory.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"withTempDirectory.js","sourceRoot":"","sources":["../../../src/v4/runtime/withTempDirectory.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;AAqBlC,8CA4BC;;AA9CD,qDAA+B;AAC/B,+CAAyB;AACzB,mDAA6B;AAC7B,2CAAyC;AASzC,MAAM,qBAAqB,GAAsB;IAC/C,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC;IAC9D,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC;CAC5C,CAAC;AAEF,yGAAyG;AAClG,KAAK,UAAU,iBAAiB,CACrC,MAAc,EACd,YAAoE,EACpE,SAA6D,EAC7D,OAA0B,qBAAqB;IAE/C,IAAI,SAAiB,CAAC;IACtB,IAAI,CAAC;QACH,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,IAAA,gBAAG,EAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,OAA2B,CAAC;IAChC,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,GAAG,IAAA,gBAAG,EAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YACnB,OAAO,IAAA,gBAAG,EAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1,12 +0,0 @@
1
- import { FxError, Inputs } from "@microsoft/teamsfx-api";
2
- import { Result } from "neverthrow";
3
- import { QuestionSpec, Validator } from "../collectInputs/collectInputs";
4
- import { Answers } from "../model/dataModel";
5
- export interface CreateFloorTail {
6
- questions: QuestionSpec[];
7
- answers: Answers;
8
- validators: Record<string, Validator>;
9
- }
10
- export declare function createFloorTail(inputs: Inputs | undefined, languages: string[], showPythonPreview?: boolean): Promise<Result<CreateFloorTail, FxError>>;
11
- export declare function validateCreateFloorAnswers(inputs: Inputs, answers: Answers): Promise<Result<undefined, FxError>>;
12
- //# sourceMappingURL=createFloorTail.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createFloorTail.d.ts","sourceRoot":"","sources":["../../../src/v4/surface/createFloorTail.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,MAAM,EAAW,MAAM,YAAY,CAAC;AAI7C,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAqB7C,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;CACvC;AAwBD,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,SAAS,EAAE,MAAM,EAAE,EACnB,iBAAiB,UAAQ,GACxB,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAiF3C;AAED,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAmBrC"}
@@ -1,138 +0,0 @@
1
- "use strict";
2
- // Copyright (c) Microsoft Corporation.
3
- // Licensed under the MIT license.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.createFloorTail = createFloorTail;
6
- exports.validateCreateFloorAnswers = validateCreateFloorAnswers;
7
- const neverthrow_1 = require("neverthrow");
8
- const localizeUtils_1 = require("../../common/localizeUtils");
9
- const common_1 = require("../../error/common");
10
- const question_1 = require("../../question");
11
- const LANGUAGE_LABELS = {
12
- javascript: "JavaScript",
13
- typescript: "TypeScript",
14
- csharp: "C#",
15
- python: "Python",
16
- };
17
- const PYTHON_LANGUAGE = "python";
18
- function languageOption(language, showPythonPreview) {
19
- return {
20
- id: language,
21
- label: LANGUAGE_LABELS[language] ?? language,
22
- description: showPythonPreview && language === PYTHON_LANGUAGE
23
- ? (0, localizeUtils_1.getLocalizedString)("core.createProjectQuestion.option.description.preview")
24
- : undefined,
25
- };
26
- }
27
- function isFuncValidation(value) {
28
- return (typeof value === "object" &&
29
- value !== null &&
30
- typeof Reflect.get(value, "validFunc") === "function");
31
- }
32
- function getStringValidationFunc(validation) {
33
- return isFuncValidation(validation) ? validation.validFunc : undefined;
34
- }
35
- async function resolveStringValue(value, inputs) {
36
- return typeof value === "function" ? await value(inputs) : value;
37
- }
38
- async function createFloorTail(inputs, languages, showPythonPreview = false) {
39
- const questions = [];
40
- const answers = {};
41
- if (languages.length > 1) {
42
- questions.push({
43
- name: "language",
44
- type: "singleSelect",
45
- title: "Programming Language",
46
- default: languages[0],
47
- staticOptions: languages.map((language) => languageOption(language, showPythonPreview)),
48
- });
49
- }
50
- else if (languages.length === 1 && languages[0] !== "common") {
51
- answers.language = languages[0];
52
- }
53
- if (inputs === undefined) {
54
- return (0, neverthrow_1.ok)({ questions, answers, validators: {} });
55
- }
56
- const folder = (0, question_1.folderQuestion)();
57
- const appName = (0, question_1.appNameQuestion)();
58
- const existingFolder = inputs[question_1.QuestionNames.Folder];
59
- if (typeof existingFolder === "string") {
60
- answers[question_1.QuestionNames.Folder] = existingFolder;
61
- }
62
- else {
63
- const defaultFolder = await resolveStringValue(folder.default, inputs);
64
- if (inputs.nonInteractive) {
65
- if (defaultFolder !== undefined) {
66
- answers[question_1.QuestionNames.Folder] = defaultFolder;
67
- }
68
- }
69
- else {
70
- questions.push({
71
- name: folder.name,
72
- type: "folder",
73
- title: (await resolveStringValue(folder.title, inputs)) ?? folder.name,
74
- placeholder: await resolveStringValue(folder.placeholder, inputs),
75
- prompt: await resolveStringValue(folder.prompt, inputs),
76
- default: defaultFolder,
77
- });
78
- }
79
- }
80
- const existingAppName = inputs[question_1.QuestionNames.AppName];
81
- if (typeof existingAppName === "string") {
82
- answers[question_1.QuestionNames.AppName] = existingAppName;
83
- }
84
- else {
85
- const defaultAppName = await resolveStringValue(appName.default, inputs);
86
- if (inputs.nonInteractive) {
87
- if (defaultAppName === undefined) {
88
- return (0, neverthrow_1.err)(new common_1.MissingRequiredInputError(question_1.QuestionNames.AppName, "createFrontDoor"));
89
- }
90
- answers[question_1.QuestionNames.AppName] = defaultAppName;
91
- }
92
- else {
93
- questions.push({
94
- name: appName.name,
95
- type: "text",
96
- title: (await resolveStringValue(appName.title, inputs)) ?? appName.name,
97
- placeholder: await resolveStringValue(appName.placeholder, inputs),
98
- prompt: await resolveStringValue(appName.prompt, inputs),
99
- default: defaultAppName,
100
- validation: "appName",
101
- });
102
- }
103
- }
104
- const validateAppName = getStringValidationFunc(appName.validation);
105
- const floorValidators = {};
106
- if (validateAppName !== undefined) {
107
- floorValidators.appName = async (value, currentAnswers) => {
108
- const validationInputs = { ...inputs };
109
- const folderAnswer = currentAnswers[question_1.QuestionNames.Folder];
110
- if (typeof folderAnswer === "string") {
111
- validationInputs[question_1.QuestionNames.Folder] = folderAnswer;
112
- }
113
- return validateAppName(value, validationInputs);
114
- };
115
- }
116
- return (0, neverthrow_1.ok)({ questions, answers, validators: floorValidators });
117
- }
118
- async function validateCreateFloorAnswers(inputs, answers) {
119
- const appName = answers[question_1.QuestionNames.AppName];
120
- if (typeof appName !== "string") {
121
- return (0, neverthrow_1.err)(new common_1.MissingRequiredInputError(question_1.QuestionNames.AppName, "createFrontDoor"));
122
- }
123
- const validateAppName = getStringValidationFunc((0, question_1.appNameQuestion)().validation);
124
- if (validateAppName === undefined) {
125
- return (0, neverthrow_1.ok)(undefined);
126
- }
127
- const validationInputs = { ...inputs };
128
- const folderAnswer = answers[question_1.QuestionNames.Folder];
129
- if (typeof folderAnswer === "string") {
130
- validationInputs[question_1.QuestionNames.Folder] = folderAnswer;
131
- }
132
- const message = await validateAppName(appName, validationInputs);
133
- if (message !== undefined) {
134
- return (0, neverthrow_1.err)(new common_1.InputValidationError(question_1.QuestionNames.AppName, message, "createFrontDoor"));
135
- }
136
- return (0, neverthrow_1.ok)(undefined);
137
- }
138
- //# sourceMappingURL=createFloorTail.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createFloorTail.js","sourceRoot":"","sources":["../../../src/v4/surface/createFloorTail.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- /**
2
- * Shared keyPrefix-based localization for the v4 create prompts. Both the Q1
3
- * selector walk and the Q2/Q3 collect-inputs bridge resolve user-visible text
4
- * the same way: look up `<keyPrefix>.<suffix>` in the NLS bundle, and fall back
5
- * to the authored literal when no key is registered.
6
- */
7
- /** Localize a raw string when it is itself an NLS key, else return it verbatim. */
8
- export declare function localizeText(text: string | undefined): string | undefined;
9
- /** Resolve `<keyPrefix>.<suffix>` via NLS, falling back to the literal `fallback`. */
10
- export declare function localizePrefixedText(keyPrefix: string | undefined, suffix: string, fallback: string | undefined): string | undefined;
11
- //# sourceMappingURL=localizePrompt.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"localizePrompt.d.ts","sourceRoot":"","sources":["../../../src/v4/surface/localizePrompt.ts"],"names":[],"mappings":"AAKA;;;;;GAKG;AAEH,mFAAmF;AACnF,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAMzE;AAED,sFAAsF;AACtF,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B,MAAM,GAAG,SAAS,CAQpB"}