@microsoft/teamsfx-core 3.0.15 → 3.0.16-beta.2026073102.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 (370) 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 +0 -5
  5. package/build/common/featureFlags.d.ts.map +1 -1
  6. package/build/common/featureFlags.js +0 -5
  7. package/build/common/featureFlags.js.map +1 -1
  8. package/build/common/httpProxy.d.ts +21 -0
  9. package/build/common/httpProxy.d.ts.map +1 -0
  10. package/build/common/httpProxy.js +117 -0
  11. package/build/common/httpProxy.js.map +1 -0
  12. package/build/common/mcpToolFetcher.d.ts +90 -0
  13. package/build/common/mcpToolFetcher.d.ts.map +1 -0
  14. package/build/common/mcpToolFetcher.js +404 -0
  15. package/build/common/mcpToolFetcher.js.map +1 -0
  16. package/build/common/odrProvider.d.ts +43 -0
  17. package/build/common/odrProvider.d.ts.map +1 -0
  18. package/build/common/odrProvider.js +154 -0
  19. package/build/common/odrProvider.js.map +1 -0
  20. package/build/common/openApiParserOptions.d.ts +3 -0
  21. package/build/common/openApiParserOptions.d.ts.map +1 -0
  22. package/build/common/openApiParserOptions.js +61 -0
  23. package/build/common/openApiParserOptions.js.map +1 -0
  24. package/build/common/secretmasker/dict.d.ts.map +1 -1
  25. package/build/common/secretmasker/dict.js +5 -2
  26. package/build/common/secretmasker/dict.js.map +1 -1
  27. package/build/common/secretmasker/feature.js.map +1 -1
  28. package/build/common/templates-config.json +5 -5
  29. package/build/component/coordinator/index.d.ts.map +1 -1
  30. package/build/component/coordinator/index.js.map +1 -1
  31. package/build/component/deps-checker/internal/dotnetChecker.js.map +1 -1
  32. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.d.ts +3 -0
  33. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.d.ts.map +1 -1
  34. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.js +38 -3
  35. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.js.map +1 -1
  36. package/build/component/driver/script/scriptDriver.js +1 -1
  37. package/build/component/driver/script/scriptDriver.js.map +1 -1
  38. package/build/component/driver/teamsApp/create.d.ts.map +1 -1
  39. package/build/component/driver/teamsApp/create.js +3 -3
  40. package/build/component/driver/teamsApp/create.js.map +1 -1
  41. package/build/component/driver/teamsApp/createAppPackage.d.ts +1 -0
  42. package/build/component/driver/teamsApp/createAppPackage.d.ts.map +1 -1
  43. package/build/component/driver/teamsApp/createAppPackage.js +23 -0
  44. package/build/component/driver/teamsApp/createAppPackage.js.map +1 -1
  45. package/build/component/driver/teamsApp/utils/CopilotGptManifestUtils.js.map +1 -1
  46. package/build/component/generator/declarativeAgent/helper.d.ts.map +1 -1
  47. package/build/component/generator/declarativeAgent/helper.js +25 -2
  48. package/build/component/generator/declarativeAgent/helper.js.map +1 -1
  49. package/build/component/generator/generatorAction.d.ts +3 -1
  50. package/build/component/generator/generatorAction.d.ts.map +1 -1
  51. package/build/component/generator/generatorAction.js.map +1 -1
  52. package/build/component/generator/officeAddin/generator.d.ts +1 -0
  53. package/build/component/generator/officeAddin/generator.d.ts.map +1 -1
  54. package/build/component/generator/officeAddin/generator.js +109 -2
  55. package/build/component/generator/officeAddin/generator.js.map +1 -1
  56. package/build/component/generator/openApiSpec/helper.d.ts +2 -3
  57. package/build/component/generator/openApiSpec/helper.d.ts.map +1 -1
  58. package/build/component/generator/openApiSpec/helper.js +19 -57
  59. package/build/component/generator/openApiSpec/helper.js.map +1 -1
  60. package/build/component/generator/templateHelper.d.ts +10 -2
  61. package/build/component/generator/templateHelper.d.ts.map +1 -1
  62. package/build/component/generator/templateHelper.js +16 -3
  63. package/build/component/generator/templateHelper.js.map +1 -1
  64. package/build/component/generator/templates/metadata/index.d.ts +15 -0
  65. package/build/component/generator/templates/metadata/index.d.ts.map +1 -1
  66. package/build/component/generator/templates/metadata/index.js +39 -0
  67. package/build/component/generator/templates/metadata/index.js.map +1 -1
  68. package/build/component/generator/templates/templateNames.d.ts +2 -0
  69. package/build/component/generator/templates/templateNames.d.ts.map +1 -1
  70. package/build/component/generator/templates/templateNames.js +2 -0
  71. package/build/component/generator/templates/templateNames.js.map +1 -1
  72. package/build/component/generator/utils.d.ts.map +1 -1
  73. package/build/component/generator/utils.js +6 -0
  74. package/build/component/generator/utils.js.map +1 -1
  75. package/build/component/generator/v4TemplateBridge.d.ts +4 -1
  76. package/build/component/generator/v4TemplateBridge.d.ts.map +1 -1
  77. package/build/component/generator/v4TemplateBridge.js +19 -3
  78. package/build/component/generator/v4TemplateBridge.js.map +1 -1
  79. package/build/component/utils/envUtil.d.ts.map +1 -1
  80. package/build/component/utils/envUtil.js +2 -2
  81. package/build/component/utils/envUtil.js.map +1 -1
  82. package/build/component/utils/fileOperation.d.ts.map +1 -1
  83. package/build/component/utils/fileOperation.js +4 -1
  84. package/build/component/utils/fileOperation.js.map +1 -1
  85. package/build/component/utils/mcpAuthScaffolder.d.ts +28 -0
  86. package/build/component/utils/mcpAuthScaffolder.d.ts.map +1 -1
  87. package/build/component/utils/mcpAuthScaffolder.js +39 -4
  88. package/build/component/utils/mcpAuthScaffolder.js.map +1 -1
  89. package/build/component/utils/mcpToolFetcher.d.ts +1 -72
  90. package/build/component/utils/mcpToolFetcher.d.ts.map +1 -1
  91. package/build/component/utils/mcpToolFetcher.js +1 -227
  92. package/build/component/utils/mcpToolFetcher.js.map +1 -1
  93. package/build/component/utils/odrProvider.d.ts +1 -55
  94. package/build/component/utils/odrProvider.d.ts.map +1 -1
  95. package/build/component/utils/odrProvider.js +1 -101
  96. package/build/component/utils/odrProvider.js.map +1 -1
  97. package/build/core/FxCore.d.ts.map +1 -1
  98. package/build/core/FxCore.declarativeAgent.d.ts.map +1 -1
  99. package/build/core/FxCore.declarativeAgent.js +110 -3
  100. package/build/core/FxCore.declarativeAgent.js.map +1 -1
  101. package/build/core/FxCore.js +4 -6
  102. package/build/core/FxCore.js.map +1 -1
  103. package/build/core/createFrontDoorAdapters.d.ts +4 -27
  104. package/build/core/createFrontDoorAdapters.d.ts.map +1 -1
  105. package/build/core/createFrontDoorAdapters.js +17 -157
  106. package/build/core/createFrontDoorAdapters.js.map +1 -1
  107. package/build/core/createProjectFrontDoor.d.ts +10 -12
  108. package/build/core/createProjectFrontDoor.d.ts.map +1 -1
  109. package/build/core/createProjectFrontDoor.js +143 -106
  110. package/build/core/createProjectFrontDoor.js.map +1 -1
  111. package/build/core/modifyProjectFrontDoor.d.ts +0 -1
  112. package/build/core/modifyProjectFrontDoor.d.ts.map +1 -1
  113. package/build/core/modifyProjectFrontDoor.js +0 -2
  114. package/build/core/modifyProjectFrontDoor.js.map +1 -1
  115. package/build/index.d.ts +3 -2
  116. package/build/index.d.ts.map +1 -1
  117. package/build/index.js +9 -1
  118. package/build/index.js.map +1 -1
  119. package/build/question/create.d.ts.map +1 -1
  120. package/build/question/create.js +2 -1
  121. package/build/question/create.js.map +1 -1
  122. package/build/question/inputs/AddKnowledgeInputs.d.ts.map +1 -1
  123. package/build/question/inputs/CreateProjectInputs.d.ts +4 -0
  124. package/build/question/inputs/CreateProjectInputs.d.ts.map +1 -1
  125. package/build/question/options/CreateProjectOptions.d.ts.map +1 -1
  126. package/build/question/options/CreateProjectOptions.js +14 -0
  127. package/build/question/options/CreateProjectOptions.js.map +1 -1
  128. package/build/question/other.d.ts.map +1 -1
  129. package/build/question/other.js +11 -1
  130. package/build/question/other.js.map +1 -1
  131. package/build/question/questionNames.d.ts +2 -0
  132. package/build/question/questionNames.d.ts.map +1 -1
  133. package/build/question/questionNames.js +2 -0
  134. package/build/question/questionNames.js.map +1 -1
  135. package/build/question/scaffold/constructNode.d.ts +3 -1
  136. package/build/question/scaffold/constructNode.d.ts.map +1 -1
  137. package/build/question/scaffold/constructNode.js +50 -0
  138. package/build/question/scaffold/constructNode.js.map +1 -1
  139. package/build/question/scaffold/vsc/CapabilityOptions.d.ts +2 -0
  140. package/build/question/scaffold/vsc/CapabilityOptions.d.ts.map +1 -1
  141. package/build/question/scaffold/vsc/CapabilityOptions.js +16 -0
  142. package/build/question/scaffold/vsc/CapabilityOptions.js.map +1 -1
  143. package/build/question/scaffold/vsc/teamsProjectTypeNode.d.ts +19 -1
  144. package/build/question/scaffold/vsc/teamsProjectTypeNode.d.ts.map +1 -1
  145. package/build/question/scaffold/vsc/teamsProjectTypeNode.js +39 -7
  146. package/build/question/scaffold/vsc/teamsProjectTypeNode.js.map +1 -1
  147. package/build/v4/buildTarget/parseSelector.d.ts +6 -2
  148. package/build/v4/buildTarget/parseSelector.d.ts.map +1 -1
  149. package/build/v4/buildTarget/parseSelector.js +58 -45
  150. package/build/v4/buildTarget/parseSelector.js.map +1 -1
  151. package/build/v4/buildTarget/resolveBuildTarget.d.ts +21 -7
  152. package/build/v4/buildTarget/resolveBuildTarget.d.ts.map +1 -1
  153. package/build/v4/buildTarget/resolveBuildTarget.js +97 -52
  154. package/build/v4/buildTarget/resolveBuildTarget.js.map +1 -1
  155. package/build/v4/collectInputs/collectInputs.d.ts +51 -10
  156. package/build/v4/collectInputs/collectInputs.d.ts.map +1 -1
  157. package/build/v4/collectInputs/collectInputs.js +287 -91
  158. package/build/v4/collectInputs/collectInputs.js.map +1 -1
  159. package/build/v4/distribution/createQuestions.d.ts.map +1 -1
  160. package/build/v4/distribution/createQuestions.js +2 -29
  161. package/build/v4/distribution/createQuestions.js.map +1 -1
  162. package/build/v4/distribution/declarativePackage.d.ts.map +1 -1
  163. package/build/v4/distribution/declarativePackage.js +2 -30
  164. package/build/v4/distribution/declarativePackage.js.map +1 -1
  165. package/build/v4/distribution/questionFragments.d.ts +11 -0
  166. package/build/v4/distribution/questionFragments.d.ts.map +1 -0
  167. package/build/v4/distribution/questionFragments.js +130 -0
  168. package/build/v4/distribution/questionFragments.js.map +1 -0
  169. package/build/v4/engineVersion.d.ts +7 -0
  170. package/build/v4/engineVersion.d.ts.map +1 -0
  171. package/build/v4/engineVersion.js +12 -0
  172. package/build/v4/engineVersion.js.map +1 -0
  173. package/build/v4/expression/evaluateExpression.d.ts +13 -0
  174. package/build/v4/expression/evaluateExpression.d.ts.map +1 -1
  175. package/build/v4/expression/evaluateExpression.js +57 -0
  176. package/build/v4/expression/evaluateExpression.js.map +1 -1
  177. package/build/v4/index.d.ts +7 -0
  178. package/build/v4/index.d.ts.map +1 -1
  179. package/build/v4/index.js +7 -0
  180. package/build/v4/index.js.map +1 -1
  181. package/build/v4/inspection/scaffoldCatalog.d.ts +28 -0
  182. package/build/v4/inspection/scaffoldCatalog.d.ts.map +1 -0
  183. package/build/v4/inspection/scaffoldCatalog.js +66 -0
  184. package/build/v4/inspection/scaffoldCatalog.js.map +1 -0
  185. package/build/v4/inspection/scaffoldMetadataSource.d.ts +6 -0
  186. package/build/v4/inspection/scaffoldMetadataSource.d.ts.map +1 -0
  187. package/build/v4/inspection/scaffoldMetadataSource.js +78 -0
  188. package/build/v4/inspection/scaffoldMetadataSource.js.map +1 -0
  189. package/build/v4/mcp/mcpAuthAction.d.ts +36 -0
  190. package/build/v4/mcp/mcpAuthAction.d.ts.map +1 -0
  191. package/build/v4/mcp/mcpAuthAction.js +177 -0
  192. package/build/v4/mcp/mcpAuthAction.js.map +1 -0
  193. package/build/v4/mcp/mcpAuthScaffold.d.ts +37 -0
  194. package/build/v4/mcp/mcpAuthScaffold.d.ts.map +1 -0
  195. package/build/v4/mcp/mcpAuthScaffold.js +162 -0
  196. package/build/v4/mcp/mcpAuthScaffold.js.map +1 -0
  197. package/build/v4/model/dataModel.d.ts +1 -1
  198. package/build/v4/model/dataModel.d.ts.map +1 -1
  199. package/build/v4/pipeline/runScaffoldPipeline.d.ts +27 -5
  200. package/build/v4/pipeline/runScaffoldPipeline.d.ts.map +1 -1
  201. package/build/v4/pipeline/runScaffoldPipeline.js +64 -10
  202. package/build/v4/pipeline/runScaffoldPipeline.js.map +1 -1
  203. package/build/v4/providers/createOptionsProviders.d.ts +11 -0
  204. package/build/v4/providers/createOptionsProviders.d.ts.map +1 -0
  205. package/build/v4/providers/createOptionsProviders.js +268 -0
  206. package/build/v4/providers/createOptionsProviders.js.map +1 -0
  207. package/build/v4/renderContext/buildRenderContext.d.ts.map +1 -1
  208. package/build/v4/renderContext/buildRenderContext.js +4 -6
  209. package/build/v4/renderContext/buildRenderContext.js.map +1 -1
  210. package/build/v4/runtime/generalSensitivityLabel.d.ts +5 -0
  211. package/build/v4/runtime/generalSensitivityLabel.d.ts.map +1 -0
  212. package/build/v4/runtime/generalSensitivityLabel.js +36 -0
  213. package/build/v4/runtime/generalSensitivityLabel.js.map +1 -0
  214. package/build/v4/runtime/inMemoryRuntime.d.ts +7 -1
  215. package/build/v4/runtime/inMemoryRuntime.d.ts.map +1 -1
  216. package/build/v4/runtime/inMemoryRuntime.js +25 -3
  217. package/build/v4/runtime/inMemoryRuntime.js.map +1 -1
  218. package/build/v4/runtime/packageParse.d.ts.map +1 -1
  219. package/build/v4/runtime/packageParse.js +64 -8
  220. package/build/v4/runtime/packageParse.js.map +1 -1
  221. package/build/v4/runtime/realRuntime.d.ts +3 -1
  222. package/build/v4/runtime/realRuntime.d.ts.map +1 -1
  223. package/build/v4/runtime/realRuntime.js +3 -2
  224. package/build/v4/runtime/realRuntime.js.map +1 -1
  225. package/build/v4/runtime/renderMustache.d.ts.map +1 -1
  226. package/build/v4/runtime/renderMustache.js +13 -4
  227. package/build/v4/runtime/renderMustache.js.map +1 -1
  228. package/build/v4/runtime/runtimeRegistry.d.ts +12 -3
  229. package/build/v4/runtime/runtimeRegistry.d.ts.map +1 -1
  230. package/build/v4/runtime/runtimeRegistry.js +123 -17
  231. package/build/v4/runtime/runtimeRegistry.js.map +1 -1
  232. package/build/v4/runtime/scaffold.d.ts +1 -0
  233. package/build/v4/runtime/scaffold.d.ts.map +1 -1
  234. package/build/v4/runtime/scaffold.js +1 -20
  235. package/build/v4/runtime/scaffold.js.map +1 -1
  236. package/build/v4/runtime/steps/daAction.d.ts.map +1 -1
  237. package/build/v4/runtime/steps/daAction.js +3 -111
  238. package/build/v4/runtime/steps/daAction.js.map +1 -1
  239. package/build/v4/runtime/steps/daSensitivity.d.ts +14 -0
  240. package/build/v4/runtime/steps/daSensitivity.d.ts.map +1 -0
  241. package/build/v4/runtime/steps/daSensitivity.js +50 -0
  242. package/build/v4/runtime/steps/daSensitivity.js.map +1 -0
  243. package/build/v4/runtime/steps/mcpAuth.d.ts +5 -2
  244. package/build/v4/runtime/steps/mcpAuth.d.ts.map +1 -1
  245. package/build/v4/runtime/steps/mcpAuth.js +37 -66
  246. package/build/v4/runtime/steps/mcpAuth.js.map +1 -1
  247. package/build/v4/runtime/steps/mcpLocal.d.ts +0 -4
  248. package/build/v4/runtime/steps/mcpLocal.d.ts.map +1 -1
  249. package/build/v4/runtime/steps/mcpLocal.js +11 -31
  250. package/build/v4/runtime/steps/mcpLocal.js.map +1 -1
  251. package/build/v4/runtime/steps/mcpStatic.d.ts +1 -1
  252. package/build/v4/runtime/steps/mcpStatic.d.ts.map +1 -1
  253. package/build/v4/runtime/steps/mcpStatic.js +14 -32
  254. package/build/v4/runtime/steps/mcpStatic.js.map +1 -1
  255. package/build/v4/runtime/steps/metaOs.d.ts.map +1 -1
  256. package/build/v4/runtime/steps/metaOs.js +39 -51
  257. package/build/v4/runtime/steps/metaOs.js.map +1 -1
  258. package/build/v4/runtime/steps/officeAddin.d.ts.map +1 -1
  259. package/build/v4/runtime/steps/officeAddin.js +7 -12
  260. package/build/v4/runtime/steps/officeAddin.js.map +1 -1
  261. package/build/v4/runtime/steps/openApi.d.ts.map +1 -1
  262. package/build/v4/runtime/steps/openApi.js +85 -566
  263. package/build/v4/runtime/steps/openApi.js.map +1 -1
  264. package/build/v4/runtime/steps/openApiCustomApi.d.ts +5 -0
  265. package/build/v4/runtime/steps/openApiCustomApi.d.ts.map +1 -0
  266. package/build/v4/runtime/steps/openApiCustomApi.js +385 -0
  267. package/build/v4/runtime/steps/openApiCustomApi.js.map +1 -0
  268. package/build/v4/runtime/whitelist.d.ts +27 -0
  269. package/build/v4/runtime/whitelist.d.ts.map +1 -1
  270. package/build/v4/runtime/whitelist.js +156 -1
  271. package/build/v4/runtime/whitelist.js.map +1 -1
  272. package/build/v4/runtime/withTempDirectory.d.ts +10 -0
  273. package/build/v4/runtime/withTempDirectory.d.ts.map +1 -0
  274. package/build/v4/runtime/withTempDirectory.js +41 -0
  275. package/build/v4/runtime/withTempDirectory.js.map +1 -0
  276. package/build/v4/surface/createFloorTail.d.ts +12 -0
  277. package/build/v4/surface/createFloorTail.d.ts.map +1 -0
  278. package/build/v4/surface/createFloorTail.js +138 -0
  279. package/build/v4/surface/createFloorTail.js.map +1 -0
  280. package/build/v4/surface/createInputs.d.ts +25 -3
  281. package/build/v4/surface/createInputs.d.ts.map +1 -1
  282. package/build/v4/surface/createInputs.js +54 -431
  283. package/build/v4/surface/createInputs.js.map +1 -1
  284. package/build/v4/surface/createSelectorWalk.d.ts +8 -3
  285. package/build/v4/surface/createSelectorWalk.d.ts.map +1 -1
  286. package/build/v4/surface/createSelectorWalk.js +21 -11
  287. package/build/v4/surface/createSelectorWalk.js.map +1 -1
  288. package/build/v4/surface/deriveCreateOptions.d.ts.map +1 -1
  289. package/build/v4/surface/deriveCreateOptions.js +5 -2
  290. package/build/v4/surface/deriveCreateOptions.js.map +1 -1
  291. package/build/v4/surface/localizePrompt.d.ts +11 -0
  292. package/build/v4/surface/localizePrompt.d.ts.map +1 -0
  293. package/build/v4/surface/localizePrompt.js +32 -0
  294. package/build/v4/surface/localizePrompt.js.map +1 -0
  295. package/build/v4/surface/modifySelectorWalk.d.ts.map +1 -1
  296. package/build/v4/surface/modifySelectorWalk.js +0 -3
  297. package/build/v4/surface/modifySelectorWalk.js.map +1 -1
  298. package/build/v4/surface/uiPromptUI.d.ts.map +1 -1
  299. package/build/v4/surface/uiPromptUI.js +45 -45
  300. package/build/v4/surface/uiPromptUI.js.map +1 -1
  301. package/build/v4/validation/capabilityCatalog.d.ts +8 -0
  302. package/build/v4/validation/capabilityCatalog.d.ts.map +1 -0
  303. package/build/v4/validation/capabilityCatalog.js +62 -0
  304. package/build/v4/validation/capabilityCatalog.js.map +1 -0
  305. package/build/v4/validation/templateArchiveValidation.d.ts +15 -0
  306. package/build/v4/validation/templateArchiveValidation.d.ts.map +1 -0
  307. package/build/v4/validation/templateArchiveValidation.js +297 -0
  308. package/build/v4/validation/templateArchiveValidation.js.map +1 -0
  309. package/build/v4/validation/validateTemplatePackage.d.ts +21 -2
  310. package/build/v4/validation/validateTemplatePackage.d.ts.map +1 -1
  311. package/build/v4/validation/validateTemplatePackage.js +155 -31
  312. package/build/v4/validation/validateTemplatePackage.js.map +1 -1
  313. package/build/v4/validators/createInputValidators.d.ts +7 -0
  314. package/build/v4/validators/createInputValidators.d.ts.map +1 -0
  315. package/build/v4/validators/createInputValidators.js +77 -0
  316. package/build/v4/validators/createInputValidators.js.map +1 -0
  317. package/build/v4/validators/mcpCredentialValidators.d.ts +5 -0
  318. package/build/v4/validators/mcpCredentialValidators.d.ts.map +1 -0
  319. package/build/v4/validators/mcpCredentialValidators.js +13 -0
  320. package/build/v4/validators/mcpCredentialValidators.js.map +1 -0
  321. package/build/v4/validators/mcpServerUrlValidator.d.ts +9 -0
  322. package/build/v4/validators/mcpServerUrlValidator.d.ts.map +1 -0
  323. package/build/v4/validators/mcpServerUrlValidator.js +15 -0
  324. package/build/v4/validators/mcpServerUrlValidator.js.map +1 -0
  325. package/package.json +29 -23
  326. package/resource/package.nls.cs.json +56 -54
  327. package/resource/package.nls.de.json +56 -54
  328. package/resource/package.nls.es.json +55 -53
  329. package/resource/package.nls.fr.json +56 -54
  330. package/resource/package.nls.it.json +55 -53
  331. package/resource/package.nls.ja.json +56 -54
  332. package/resource/package.nls.json +10 -3
  333. package/resource/package.nls.ko.json +56 -54
  334. package/resource/package.nls.pl.json +56 -54
  335. package/resource/package.nls.pt-BR.json +56 -54
  336. package/resource/package.nls.ru.json +56 -54
  337. package/resource/package.nls.tr.json +56 -54
  338. package/resource/package.nls.zh-Hans.json +56 -54
  339. package/resource/package.nls.zh-Hant.json +56 -54
  340. package/resource/templates/package.nls.cs.json +22 -9
  341. package/resource/templates/package.nls.de.json +22 -9
  342. package/resource/templates/package.nls.es.json +22 -9
  343. package/resource/templates/package.nls.fr.json +22 -9
  344. package/resource/templates/package.nls.it.json +22 -9
  345. package/resource/templates/package.nls.ja.json +22 -9
  346. package/resource/templates/package.nls.json +16 -3
  347. package/resource/templates/package.nls.ko.json +22 -9
  348. package/resource/templates/package.nls.pl.json +22 -9
  349. package/resource/templates/package.nls.pt-BR.json +22 -9
  350. package/resource/templates/package.nls.ru.json +22 -9
  351. package/resource/templates/package.nls.tr.json +22 -9
  352. package/resource/templates/package.nls.zh-Hans.json +22 -9
  353. package/resource/templates/package.nls.zh-Hant.json +22 -9
  354. package/resource/templates/package.nls.zh-cn.json +7 -1
  355. package/resource/templates/package.nls.zh-tw.json +7 -1
  356. package/templates/fallback/common.zip +0 -0
  357. package/templates/fallback/csharp.zip +0 -0
  358. package/templates/fallback/js.zip +0 -0
  359. package/templates/fallback/python.zip +0 -0
  360. package/templates/fallback/ts.zip +0 -0
  361. package/templates/metadata/allTemplates.json +16 -2
  362. package/templates/metadata.zip +0 -0
  363. package/templates/ui/wizardNode.json +24 -0
  364. package/templates/v4/create-selector.json +30 -5
  365. package/templates/v4/floor.json +1 -1
  366. package/templates/v4/modify-selector.json +1 -6
  367. package/templates/v4/templates-metadata.zip +0 -0
  368. package/templates/v4/templates.zip +0 -0
  369. package/templates/configs/local/typescript/.gitignore +0 -1
  370. package/templates/configs/playground/typescript/.gitignore +0 -4
@@ -1,22 +1,32 @@
1
- import { FxError } from "@microsoft/teamsfx-api";
1
+ import { FxError, Warning } from "@microsoft/teamsfx-api";
2
2
  import { Result } from "neverthrow";
3
+ import { ConditionalExpression } from "../expression/evaluateExpression";
3
4
  import { RenderVars, TemplateFileEntry } from "../model/dataModel";
5
+ /** `Warning.type` for a render path left untouched because the target already had that file. */
6
+ export declare const EXISTING_FILE_SKIPPED_WARNING = "v4ExistingFileSkipped";
4
7
  /** A resolved step parameter value. */
5
8
  export type ParamValue = string | boolean | string[];
6
9
  /** A step's author-supplied `with` block, or its resolved form. */
7
10
  export type StepParams = Record<string, ParamValue>;
8
11
  /** One `pipeline.steps` entry. `produces` is reserved for future cross-step data flow. */
9
- export interface PipelineStep {
12
+ export interface PipelineStep extends ConditionalExpression {
10
13
  step: string;
11
- comment?: string;
12
- when?: string;
13
14
  with?: StepParams;
14
15
  produces?: string[];
15
16
  }
17
+ /** One render-phase file filter. Paths are target-relative output paths after `.tpl` suffix stripping. */
18
+ export interface RenderFilter extends ConditionalExpression {
19
+ exclude: string[];
20
+ }
21
+ /** Render-phase controls declared by `pipeline.json`. */
22
+ export interface PipelineRender {
23
+ filters?: RenderFilter[];
24
+ }
16
25
  /** A parsed, schema-valid `pipeline.json`. */
17
26
  export interface Pipeline {
18
27
  pipeline: string;
19
28
  comment?: string;
29
+ render?: PipelineRender;
20
30
  steps: PipelineStep[];
21
31
  }
22
32
  /** The output directory plus its pre-run file snapshot. */
@@ -32,6 +42,7 @@ export interface SkippedFile {
32
42
  /** The result of a scaffold run. */
33
43
  export interface ScaffoldOutcome {
34
44
  written: string[];
45
+ filtered: string[];
35
46
  skipped: SkippedFile[];
36
47
  stepsRun: string[];
37
48
  stepsSkipped: string[];
@@ -42,14 +53,23 @@ export interface Orchestration {
42
53
  }
43
54
  /** Minimal manifest wrapper face needed by registered steps. */
44
55
  export interface ManifestWrapper {
45
- addAction(action: Record<string, string>): void;
56
+ registerDeclarativeAgentAction(teamsManifestPath: string, pluginManifestPath: string): Result<void, FxError>;
57
+ setSensitivityLabel?(path: string, id: string): Result<void, FxError>;
46
58
  }
47
59
  /** The capabilities the executor hands each registered step's `apply`. */
48
60
  export interface StepContext {
49
61
  write(path: string, data: Buffer): void;
62
+ /** Persist regular and `SECRET_*` values through the runtime's environment boundary. */
63
+ writeEnvironment(environment: string, values: Record<string, string>): Promise<Result<void, FxError>>;
50
64
  manifestWrapper(kind: string): ManifestWrapper;
51
65
  /** Read current bytes at a target path, or `undefined` when absent. */
52
66
  read(path: string): Buffer | undefined;
67
+ /**
68
+ * Emit a localized, user-visible warning without failing the pipeline. The `type` is what
69
+ * lets a surface decide what to do with it (summary line, notification, log only), so it
70
+ * travels with the message instead of being dropped at the boundary.
71
+ */
72
+ warn?(warning: Warning): void;
53
73
  }
54
74
  /** An engine-registered, whitelist-dispatched post-render step. */
55
75
  export interface RegisteredStep {
@@ -63,7 +83,9 @@ export interface PipelineRuntimePort {
63
83
  evalWhen(expr: string, renderVars: RenderVars): Result<boolean, FxError>;
64
84
  render(mustache: string, renderVars: RenderVars): Result<string, FxError>;
65
85
  manifestWrapper(kind: string): ManifestWrapper;
86
+ warn?(warning: Warning): void;
66
87
  write(path: string, data: Buffer): void;
88
+ writeEnvironment(environment: string, values: Record<string, string>): Promise<Result<void, FxError>>;
67
89
  /** Current bytes at a path, or `undefined` when absent. */
68
90
  read(path: string): Buffer | undefined;
69
91
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runScaffoldPipeline.d.ts","sourceRoot":"","sources":["../../../src/v4/pipeline/runScaffoldPipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runScaffoldPipeline.d.ts","sourceRoot":"","sources":["../../../src/v4/pipeline/runScaffoldPipeline.ts"],"names":[],"mappings":"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"}
@@ -2,16 +2,22 @@
2
2
  // Copyright (c) Microsoft Corporation.
3
3
  // Licensed under the MIT license.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.REQUIRE_EMPTY_TARGET = exports.PIPELINE_CROSS_STEP_REFERENCE = exports.PIPELINE_PARAMS_VIOLATION = exports.PIPELINE_UNKNOWN_STEP = exports.PIPELINE_UNKNOWN_PIPELINE = void 0;
5
+ exports.REQUIRE_EMPTY_TARGET = exports.PIPELINE_CROSS_STEP_REFERENCE = exports.PIPELINE_PARAMS_VIOLATION = exports.PIPELINE_UNKNOWN_STEP = exports.PIPELINE_UNKNOWN_PIPELINE = exports.EXISTING_FILE_SKIPPED_WARNING = void 0;
6
6
  exports.runScaffoldPipeline = runScaffoldPipeline;
7
7
  const teamsfx_api_1 = require("@microsoft/teamsfx-api");
8
8
  const neverthrow_1 = require("neverthrow");
9
+ const evaluateExpression_1 = require("../expression/evaluateExpression");
10
+ const localizeUtils_1 = require("../../common/localizeUtils");
9
11
  /** v4 scaffold pipeline executor. See the run-scaffold-pipeline spec and ADR-0017. */
10
12
  const SOURCE = "Scaffold";
11
13
  /** Built-in guard that must run before rendering so a violation writes nothing. */
12
14
  const STEP_REQUIRE_EMPTY_TARGET = "require-empty-target";
13
15
  const TPL_SUFFIX = ".tpl";
14
- const SKIP_WARNING = "exists, not overwritten; delete or rename it to rebuild";
16
+ function skipWarning(path) {
17
+ return (0, localizeUtils_1.getLocalizedString)("core.v4.scaffold.existingFileSkipped", path);
18
+ }
19
+ /** `Warning.type` for a render path left untouched because the target already had that file. */
20
+ exports.EXISTING_FILE_SKIPPED_WARNING = "v4ExistingFileSkipped";
15
21
  /** `SystemError` names for engine-side pipeline breaks. */
16
22
  exports.PIPELINE_UNKNOWN_PIPELINE = "PipelineUnknownPipeline";
17
23
  exports.PIPELINE_UNKNOWN_STEP = "PipelineUnknownStep";
@@ -24,7 +30,31 @@ function systemError(name, message) {
24
30
  }
25
31
  /** Evaluate a step's `when` (absent guard ⇒ active). */
26
32
  function whenActive(step, renderVars, port) {
27
- return step.when ? port.evalWhen(step.when, renderVars) : (0, neverthrow_1.ok)(true);
33
+ return (0, evaluateExpression_1.evaluateConditionalWhen)(step, (expr) => port.evalWhen(expr, renderVars));
34
+ }
35
+ function filterActive(filter, renderVars, port) {
36
+ return (0, evaluateExpression_1.evaluateConditionalWhen)(filter, (expr) => port.evalWhen(expr, renderVars));
37
+ }
38
+ function normalizedPath(path) {
39
+ return path.replace(/\\/g, "/");
40
+ }
41
+ function matchesActiveFilter(path, filters, renderVars, port) {
42
+ if (filters === undefined) {
43
+ return (0, neverthrow_1.ok)(false);
44
+ }
45
+ for (const filter of filters) {
46
+ if (!filter.exclude.includes(path)) {
47
+ continue;
48
+ }
49
+ const active = filterActive(filter, renderVars, port);
50
+ if (active.isErr()) {
51
+ return (0, neverthrow_1.err)(active.error);
52
+ }
53
+ if (active.value) {
54
+ return (0, neverthrow_1.ok)(true);
55
+ }
56
+ }
57
+ return (0, neverthrow_1.ok)(false);
28
58
  }
29
59
  /** Resolve a step's `with`: strings render through Mustache; literals pass through. */
30
60
  function resolveParams(params, renderVars, port) {
@@ -85,6 +115,7 @@ async function runScaffoldPipeline(pipeline, content, renderVars, targetDir, por
85
115
  }
86
116
  // Phase 1: render `.tpl` path/body pairs; copy non-template files verbatim.
87
117
  const written = [];
118
+ const filtered = [];
88
119
  const skipped = [];
89
120
  for (const entry of content) {
90
121
  if (entry.path.endsWith(TPL_SUFFIX)) {
@@ -92,9 +123,19 @@ async function runScaffoldPipeline(pipeline, content, renderVars, targetDir, por
92
123
  if (renderedPath.isErr()) {
93
124
  return (0, neverthrow_1.err)(renderedPath.error);
94
125
  }
95
- const writePath = renderedPath.value;
126
+ const writePath = normalizedPath(renderedPath.value);
127
+ const omitted = matchesActiveFilter(writePath, pipeline.render?.filters, renderVars, port);
128
+ if (omitted.isErr()) {
129
+ return (0, neverthrow_1.err)(omitted.error);
130
+ }
131
+ if (omitted.value) {
132
+ filtered.push(writePath);
133
+ continue;
134
+ }
96
135
  if (targetDir.existing.includes(writePath)) {
97
- skipped.push({ path: writePath, warning: SKIP_WARNING });
136
+ const warning = skipWarning(writePath);
137
+ skipped.push({ path: writePath, warning });
138
+ port.warn?.({ type: exports.EXISTING_FILE_SKIPPED_WARNING, content: warning });
98
139
  continue;
99
140
  }
100
141
  const renderedBody = port.render(entry.data.toString("utf8"), renderVars); // AC-18
@@ -105,19 +146,32 @@ async function runScaffoldPipeline(pipeline, content, renderVars, targetDir, por
105
146
  written.push(writePath);
106
147
  }
107
148
  else {
108
- if (targetDir.existing.includes(entry.path)) {
109
- skipped.push({ path: entry.path, warning: SKIP_WARNING });
149
+ const writePath = normalizedPath(entry.path);
150
+ const omitted = matchesActiveFilter(writePath, pipeline.render?.filters, renderVars, port);
151
+ if (omitted.isErr()) {
152
+ return (0, neverthrow_1.err)(omitted.error);
153
+ }
154
+ if (omitted.value) {
155
+ filtered.push(writePath);
110
156
  continue;
111
157
  }
112
- port.write(entry.path, entry.data);
113
- written.push(entry.path);
158
+ if (targetDir.existing.includes(writePath)) {
159
+ const warning = skipWarning(writePath);
160
+ skipped.push({ path: writePath, warning });
161
+ port.warn?.({ type: exports.EXISTING_FILE_SKIPPED_WARNING, content: warning });
162
+ continue;
163
+ }
164
+ port.write(writePath, entry.data);
165
+ written.push(writePath);
114
166
  }
115
167
  }
116
168
  // Phase 2 — post-render steps, in declared order.
117
169
  const ctx = {
118
170
  write: (path, data) => port.write(path, data),
171
+ writeEnvironment: (environment, values) => port.writeEnvironment(environment, values),
119
172
  manifestWrapper: (kind) => port.manifestWrapper(kind),
120
173
  read: (path) => port.read(path),
174
+ warn: port.warn,
121
175
  };
122
176
  const stepsRun = [];
123
177
  const stepsSkipped = [];
@@ -153,6 +207,6 @@ async function runScaffoldPipeline(pipeline, content, renderVars, targetDir, por
153
207
  }
154
208
  stepsRun.push(step.step);
155
209
  }
156
- return (0, neverthrow_1.ok)({ written, skipped, stepsRun, stepsSkipped });
210
+ return (0, neverthrow_1.ok)({ written, filtered, skipped, stepsRun, stepsSkipped });
157
211
  }
158
212
  //# sourceMappingURL=runScaffoldPipeline.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runScaffoldPipeline.js","sourceRoot":"","sources":["../../../src/v4/pipeline/runScaffoldPipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runScaffoldPipeline.js","sourceRoot":"","sources":["../../../src/v4/pipeline/runScaffoldPipeline.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { OptionsProvider } from "../collectInputs/collectInputs";
2
+ import { MCPFetchResult } from "../../common/mcpToolFetcher";
3
+ import { type ODRServer } from "../../common/odrProvider";
4
+ import { SearchOpenAPISpecResult } from "../../common/kiotaClient";
5
+ export declare function createMcpServerTypesProvider(localServers: () => Promise<ODRServer[]>): OptionsProvider;
6
+ export declare function createLocalMcpServersProvider(localServers: () => Promise<ODRServer[]>): OptionsProvider;
7
+ export declare const openApiOperationsProvider: OptionsProvider;
8
+ export declare function createOpenApiSearchProvider(searchApiSpec: (query: string) => Promise<SearchOpenAPISpecResult[]>): OptionsProvider;
9
+ export declare function createMcpToolsProvider(fetchTools: (serverUrl: string) => Promise<MCPFetchResult>): OptionsProvider;
10
+ export declare function createDefaultCreateOptionsProviders(fetchTools: (serverUrl: string) => Promise<MCPFetchResult>, listLocalMcpServers: () => Promise<ODRServer[]>, searchApiSpec?: (query: string) => Promise<SearchOpenAPISpecResult[]>): Record<string, OptionsProvider>;
11
+ //# sourceMappingURL=createOptionsProviders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createOptionsProviders.d.ts","sourceRoot":"","sources":["../../../src/v4/providers/createOptionsProviders.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AA2BnE,wBAAgB,4BAA4B,CAC1C,YAAY,EAAE,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC,GACvC,eAAe,CAejB;AAeD,wBAAgB,6BAA6B,CAC3C,YAAY,EAAE,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC,GACvC,eAAe,CAajB;AAqCD,eAAO,MAAM,yBAAyB,EAAE,eA8CvC,CAAC;AAEF,wBAAgB,2BAA2B,CACzC,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,uBAAuB,EAAE,CAAC,GACnE,eAAe,CA4BjB;AAyBD,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,GACzD,eAAe,CAqDjB;AAED,wBAAgB,mCAAmC,CACjD,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,EAC1D,mBAAmB,EAAE,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC,EAC/C,aAAa,GAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,uBAAuB,EAAE,CAA6B,GAC/F,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CASjC"}
@@ -0,0 +1,268 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT license.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.openApiOperationsProvider = void 0;
6
+ exports.createMcpServerTypesProvider = createMcpServerTypesProvider;
7
+ exports.createLocalMcpServersProvider = createLocalMcpServersProvider;
8
+ exports.createOpenApiSearchProvider = createOpenApiSearchProvider;
9
+ exports.createMcpToolsProvider = createMcpToolsProvider;
10
+ exports.createDefaultCreateOptionsProviders = createDefaultCreateOptionsProviders;
11
+ const tslib_1 = require("tslib");
12
+ const teamsfx_api_1 = require("@microsoft/teamsfx-api");
13
+ const m365_spec_parser_1 = require("@microsoft/m365-spec-parser");
14
+ const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
15
+ const openApiParserOptions_1 = require("../../common/openApiParserOptions");
16
+ const mcpStaticTools_1 = require("../mcp/mcpStaticTools");
17
+ const remoteMcpServerType = {
18
+ id: "remote",
19
+ label: "Remote MCP Server",
20
+ keyPrefix: "core.createProjectQuestion.mcpServerType.remote",
21
+ };
22
+ const localMcpServerType = {
23
+ id: "local",
24
+ label: "Local MCP Server",
25
+ keyPrefix: "core.createProjectQuestion.mcpServerType.local",
26
+ };
27
+ function createLocalServerCache(listLocalMcpServers) {
28
+ let cached;
29
+ return () => {
30
+ if (cached === undefined) {
31
+ cached = listLocalMcpServers();
32
+ }
33
+ return cached;
34
+ };
35
+ }
36
+ function createMcpServerTypesProvider(localServers) {
37
+ return {
38
+ derivedSchema: ["catalog"],
39
+ async fetch(params) {
40
+ if (params.selected === remoteMcpServerType.id) {
41
+ return { options: [remoteMcpServerType], derived: { catalog: "{}" } };
42
+ }
43
+ const servers = await localServers();
44
+ return {
45
+ options: servers.length > 0 ? [remoteMcpServerType, localMcpServerType] : [remoteMcpServerType],
46
+ derived: { catalog: localServerCatalog(servers) },
47
+ };
48
+ },
49
+ };
50
+ }
51
+ function localServerDetail(server) {
52
+ const toolsDetail = `${server.tools.length} tools available`;
53
+ return server.description ? `${server.description} (${toolsDetail})` : toolsDetail;
54
+ }
55
+ function localServerCatalog(servers) {
56
+ const catalog = {};
57
+ for (const server of servers) {
58
+ catalog[server.name] = { command: server.command, args: server.args };
59
+ }
60
+ return JSON.stringify(catalog);
61
+ }
62
+ function createLocalMcpServersProvider(localServers) {
63
+ return {
64
+ async fetch() {
65
+ const servers = await localServers();
66
+ return {
67
+ options: servers.map((server) => ({
68
+ id: server.name,
69
+ label: server.display_name || server.name,
70
+ detail: localServerDetail(server),
71
+ })),
72
+ };
73
+ },
74
+ };
75
+ }
76
+ function openApiParseOptions() {
77
+ // Reuse the v3 Copilot parser options (single source of truth) instead of a v4 copy.
78
+ return (0, openApiParserOptions_1.getParserOptions)(m365_spec_parser_1.ProjectType.Copilot, true);
79
+ }
80
+ function operationDetail(operation) {
81
+ if (!operation.auth) {
82
+ return "No authentication";
83
+ }
84
+ if (m365_spec_parser_1.Utils.isBearerTokenAuth(operation.auth.authScheme)) {
85
+ return "API key";
86
+ }
87
+ if (m365_spec_parser_1.Utils.isOAuthWithAuthCodeFlow(operation.auth.authScheme)) {
88
+ return "OAuth";
89
+ }
90
+ if (m365_spec_parser_1.Utils.isAPIKeyAuthButNotInCookie(operation.auth.authScheme)) {
91
+ return "API key with header or query parameter";
92
+ }
93
+ return "Unsupported authentication";
94
+ }
95
+ function sortOperations(operations) {
96
+ return [...operations].sort((left, right) => {
97
+ const leftParts = left.api.toLowerCase().split(" ");
98
+ const rightParts = right.api.toLowerCase().split(" ");
99
+ if (leftParts[0] < rightParts[0]) {
100
+ return -1;
101
+ }
102
+ if (leftParts[0] > rightParts[0]) {
103
+ return 1;
104
+ }
105
+ return (leftParts[1] ?? "").localeCompare(rightParts[1] ?? "");
106
+ });
107
+ }
108
+ exports.openApiOperationsProvider = {
109
+ async fetch(params) {
110
+ const apiSpecLocation = params.apiSpecLocation?.trim();
111
+ if (!apiSpecLocation) {
112
+ throw new teamsfx_api_1.SystemError({
113
+ source: "Scaffold",
114
+ name: "OpenApiMissingSpecLocation",
115
+ message: "OpenAPI operations cannot be listed without an API spec location.",
116
+ });
117
+ }
118
+ const parser = new m365_spec_parser_1.SpecParser(apiSpecLocation, openApiParseOptions());
119
+ const validation = await parser.validate();
120
+ if (validation.status === m365_spec_parser_1.ValidationStatus.Error) {
121
+ throw new teamsfx_api_1.UserError({
122
+ source: "Scaffold",
123
+ name: "OpenApiSpecInvalid",
124
+ message: "The OpenAPI description document is invalid or contains no supported operations.",
125
+ });
126
+ }
127
+ let listed;
128
+ try {
129
+ listed = await parser.list();
130
+ }
131
+ catch {
132
+ throw new teamsfx_api_1.UserError({
133
+ source: "Scaffold",
134
+ name: "OpenApiSpecInvalid",
135
+ message: "The OpenAPI description document is invalid or contains no supported operations.",
136
+ });
137
+ }
138
+ const operations = sortOperations(listed.APIs).filter((operation) => operation.isValid);
139
+ if (operations.length === 0) {
140
+ throw new teamsfx_api_1.UserError({
141
+ source: "Scaffold",
142
+ name: "OpenApiSpecInvalid",
143
+ message: "The OpenAPI description document is invalid or contains no supported operations.",
144
+ });
145
+ }
146
+ return {
147
+ options: operations.map((operation) => ({
148
+ id: operation.api,
149
+ label: operation.api,
150
+ groupName: operation.api.toUpperCase().split(" ")[0],
151
+ detail: operationDetail(operation),
152
+ })),
153
+ };
154
+ },
155
+ };
156
+ function createOpenApiSearchProvider(searchApiSpec) {
157
+ return {
158
+ async fetch(params) {
159
+ const query = params.query?.trim();
160
+ if (!query) {
161
+ throw new teamsfx_api_1.UserError({
162
+ source: "Scaffold",
163
+ name: "OpenApiSearchQueryMissing",
164
+ message: "Please enter a search query.",
165
+ });
166
+ }
167
+ const results = await searchApiSpec(query);
168
+ if (results.length === 0) {
169
+ throw new teamsfx_api_1.UserError({
170
+ source: "Scaffold",
171
+ name: "OpenApiSearchResultNotFound",
172
+ message: "No search result found.",
173
+ });
174
+ }
175
+ return {
176
+ options: results.map((api) => ({
177
+ id: api.url,
178
+ label: api.key,
179
+ detail: api.description,
180
+ })),
181
+ };
182
+ },
183
+ };
184
+ }
185
+ function mcpToolsJsonFromFetchResult(serverUrl, result) {
186
+ if (result.requiresAuth) {
187
+ throw new teamsfx_api_1.UserError({
188
+ source: "Scaffold",
189
+ name: "McpAuthRequired",
190
+ message: `The MCP server${serverUrl ? ` at ${serverUrl}` : ""} requires authentication.`,
191
+ });
192
+ }
193
+ if (result.tools.length === 0) {
194
+ throw new teamsfx_api_1.UserError({
195
+ source: "Scaffold",
196
+ name: "McpToolsNotFound",
197
+ message: `No tools were discovered from the MCP server${serverUrl ? ` at ${serverUrl}` : ""}.`,
198
+ });
199
+ }
200
+ return JSON.stringify({ tools: result.tools });
201
+ }
202
+ function createMcpToolsProvider(fetchTools) {
203
+ return {
204
+ derivedSchema: ["toolsJson"],
205
+ async fetch(params) {
206
+ let toolsJson = params.toolsJson?.trim();
207
+ const toolsFilePath = params.toolsFilePath?.trim();
208
+ if (!toolsJson && toolsFilePath) {
209
+ try {
210
+ toolsJson = fs_extra_1.default.readFileSync(toolsFilePath, "utf8");
211
+ }
212
+ catch {
213
+ throw new teamsfx_api_1.UserError({
214
+ source: "Scaffold",
215
+ name: "McpToolsFileReadFailed",
216
+ message: "Failed to read the MCP tools file.",
217
+ });
218
+ }
219
+ }
220
+ const serverUrl = params.serverUrl?.trim();
221
+ if (!toolsJson && serverUrl) {
222
+ try {
223
+ toolsJson = mcpToolsJsonFromFetchResult(serverUrl, await fetchTools(serverUrl));
224
+ }
225
+ catch (error) {
226
+ if (error instanceof teamsfx_api_1.UserError) {
227
+ throw error;
228
+ }
229
+ throw new teamsfx_api_1.UserError({
230
+ source: "Scaffold",
231
+ name: "McpToolsFetchFailed",
232
+ message: `Failed to fetch tools from the MCP server at ${serverUrl}.`,
233
+ });
234
+ }
235
+ }
236
+ if (!toolsJson) {
237
+ throw new teamsfx_api_1.UserError({
238
+ source: "Scaffold",
239
+ name: "McpToolsJsonMissing",
240
+ message: "MCP tools JSON is required before listing tools.",
241
+ });
242
+ }
243
+ const parsed = (0, mcpStaticTools_1.parseMcpStaticToolsJson)(toolsJson);
244
+ if (!parsed.ok) {
245
+ throw new teamsfx_api_1.UserError({ source: "Scaffold", name: parsed.code, message: parsed.message });
246
+ }
247
+ return {
248
+ options: parsed.tools.map((tool) => ({
249
+ id: tool.name,
250
+ label: tool.name,
251
+ detail: tool.description,
252
+ })),
253
+ derived: { toolsJson },
254
+ };
255
+ },
256
+ };
257
+ }
258
+ function createDefaultCreateOptionsProviders(fetchTools, listLocalMcpServers, searchApiSpec = () => Promise.resolve([])) {
259
+ const localServers = createLocalServerCache(listLocalMcpServers);
260
+ return {
261
+ "mcp.serverTypes": createMcpServerTypesProvider(localServers),
262
+ "mcp.localServers": createLocalMcpServersProvider(localServers),
263
+ "mcp.tools": createMcpToolsProvider(fetchTools),
264
+ "openapi.search": createOpenApiSearchProvider(searchApiSpec),
265
+ "openapi.operations": exports.openApiOperationsProvider,
266
+ };
267
+ }
268
+ //# sourceMappingURL=createOptionsProviders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createOptionsProviders.js","sourceRoot":"","sources":["../../../src/v4/providers/createOptionsProviders.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildRenderContext.d.ts","sourceRoot":"","sources":["../../../src/v4/renderContext/buildRenderContext.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAe,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAW,MAAM,YAAY,CAAC;AAC7C,OAAO,EAEL,qBAAqB,EAItB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAMtE,yCAAyC;AACzC,MAAM,MAAM,eAAe,GACvB;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC7B;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC5C;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAElC,iFAAiF;AACjF,eAAO,MAAM,yBAAyB,gCAAgC,CAAC;AAEvE,gDAAgD;AAChD,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,eAAe,EAAE,EAC7B,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,qBAAqB,EAC3B,YAAY,GAAE,MAAM,EAAO,GAC1B,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CA0D7B"}
1
+ {"version":3,"file":"buildRenderContext.d.ts","sourceRoot":"","sources":["../../../src/v4/renderContext/buildRenderContext.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAe,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAW,MAAM,YAAY,CAAC;AAC7C,OAAO,EAEL,qBAAqB,EAItB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAMtE,yCAAyC;AACzC,MAAM,MAAM,eAAe,GACvB;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC7B;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC5C;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAElC,iFAAiF;AACjF,eAAO,MAAM,yBAAyB,gCAAgC,CAAC;AAEvE,gDAAgD;AAChD,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,eAAe,EAAE,EAC7B,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,qBAAqB,EAC3B,YAAY,GAAE,MAAM,EAAO,GAC1B,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAwD7B"}
@@ -13,16 +13,15 @@ const SOURCE = "Scaffold";
13
13
  exports.RCTX_SHADOWS_CALLER_FLOOR = "RenderVarShadowsCallerFloor";
14
14
  /** Build one template's render variable map. */
15
15
  function buildRenderContext(replaceMap, answers, callerFloor, port, declaredKeys = []) {
16
- // Seed declared keys with NULL_VALUE; omit string[] answers from the scalar evaluator scope.
16
+ // Seed declared keys with NULL_VALUE. A string[] answer enters the scalar scope
17
+ // as a comma-joined string so membership fns (e.g. contains) can test it.
17
18
  const scope = {};
18
19
  for (const key of declaredKeys) {
19
20
  scope[key] = evaluateExpression_1.NULL_VALUE;
20
21
  }
21
22
  Object.assign(scope, callerFloor);
22
23
  for (const [key, value] of Object.entries(answers)) {
23
- if (!Array.isArray(value)) {
24
- scope[key] = value;
25
- }
24
+ scope[key] = Array.isArray(value) ? value.join(",") : value;
26
25
  }
27
26
  // Seed = raw answers plus derived values; the caller floor is overlaid downstream.
28
27
  const renderVars = { ...answers };
@@ -38,9 +37,8 @@ function buildRenderContext(replaceMap, answers, callerFloor, port, declaredKeys
38
37
  renderVars[entry.var] = entry.const;
39
38
  }
40
39
  else if ("from" in entry) {
41
- // A `{from}` of a multiSelect answer preserves the typed string[].
42
40
  const direct = answers[entry.from];
43
- if (Array.isArray(direct)) {
41
+ if (direct !== undefined) {
44
42
  renderVars[entry.var] = direct;
45
43
  }
46
44
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"buildRenderContext.js","sourceRoot":"","sources":["../../../src/v4/renderContext/buildRenderContext.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AA4BlC,gDAgEC;AA1FD,wDAA8D;AAC9D,2CAA6C;AAC7C,yEAM0C;AAG1C,mFAAmF;AAEnF,MAAM,MAAM,GAAG,UAAU,CAAC;AAS1B,iFAAiF;AACpE,QAAA,yBAAyB,GAAG,6BAA6B,CAAC;AAEvE,gDAAgD;AAChD,SAAgB,kBAAkB,CAChC,UAA6B,EAC7B,OAAgB,EAChB,WAAwB,EACxB,IAA2B,EAC3B,eAAyB,EAAE;IAE3B,6FAA6F;IAC7F,MAAM,KAAK,GAAU,EAAE,CAAC;IACxB,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,KAAK,CAAC,GAAG,CAAC,GAAG,+BAAU,CAAC;IAC1B,CAAC;IACD,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAClC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1B,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACrB,CAAC;IACH,CAAC;IACD,mFAAmF;IACnF,MAAM,UAAU,GAAe,EAAE,GAAG,OAAO,EAAE,CAAC;IAE9C,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,IAAI,KAAK,CAAC,GAAG,IAAI,WAAW,EAAE,CAAC;YAC7B,OAAO,IAAA,gBAAG,EACR,IAAI,yBAAW,CAAC;gBACd,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,iCAAyB;gBAC/B,OAAO,EAAE,mBAAmB,KAAK,CAAC,GAAG,6CAA6C,KAAK,CAAC,GAAG,yCAAyC;aACrI,CAAC,CACH,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YACrB,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;QACtC,CAAC;aAAM,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;YAC3B,mEAAmE;YACnE,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACnC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1B,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;YACjC,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,GAAG,IAAA,uCAAkB,EAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBAChE,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;oBACd,OAAO,IAAA,gBAAG,EAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBACtB,CAAC;gBACD,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,IAAA,uCAAkB,EAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAChE,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;gBACd,OAAO,IAAA,gBAAG,EAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;YACD,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;gBACrB,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;YACtC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,IAAA,uCAAkB,EAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAChE,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;gBACd,OAAO,IAAA,gBAAG,EAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;YACD,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,OAAO,IAAA,eAAE,EAAC,UAAU,CAAC,CAAC;AACxB,CAAC;AAED,kFAAkF;AAClF,SAAS,QAAQ,CAAC,CAAY;IAC5B,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC"}
1
+ {"version":3,"file":"buildRenderContext.js","sourceRoot":"","sources":["../../../src/v4/renderContext/buildRenderContext.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { M365TokenProvider } from "@microsoft/teamsfx-api";
2
+ import { GeneralSensitivityLabelService } from "./steps/daSensitivity";
3
+ /** Build the non-interactive, best-effort Graph adapter used by the real scaffold runtime. */
4
+ export declare function createGeneralSensitivityLabelService(tokenProvider: M365TokenProvider | undefined): GeneralSensitivityLabelService;
5
+ //# sourceMappingURL=generalSensitivityLabel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generalSensitivityLabel.d.ts","sourceRoot":"","sources":["../../../src/v4/runtime/generalSensitivityLabel.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAY,MAAM,wBAAwB,CAAC;AAGrE,OAAO,EACL,8BAA8B,EAE/B,MAAM,uBAAuB,CAAC;AAE/B,8FAA8F;AAC9F,wBAAgB,oCAAoC,CAClD,aAAa,EAAE,iBAAiB,GAAG,SAAS,GAC3C,8BAA8B,CA6BhC"}