@microsoft/teamsfx-core 2.0.8-alpha.d1a09e202.0 → 2.0.8-alpha.ded43fb2d.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 (313) hide show
  1. package/build/common/constants.d.ts +5 -5
  2. package/build/common/constants.d.ts.map +1 -1
  3. package/build/common/constants.js +5 -5
  4. package/build/common/constants.js.map +1 -1
  5. package/build/common/deps-checker/constant/message.d.ts +1 -1
  6. package/build/common/deps-checker/constant/message.d.ts.map +1 -1
  7. package/build/common/deps-checker/constant/message.js +1 -1
  8. package/build/common/deps-checker/constant/message.js.map +1 -1
  9. package/build/common/deps-checker/util/fileHelper.js +1 -1
  10. package/build/common/deps-checker/util/fileHelper.js.map +1 -1
  11. package/build/common/featureFlags.d.ts +74 -6
  12. package/build/common/featureFlags.d.ts.map +1 -1
  13. package/build/common/featureFlags.js +72 -32
  14. package/build/common/featureFlags.js.map +1 -1
  15. package/build/common/m365/launchHelper.d.ts.map +1 -1
  16. package/build/common/m365/launchHelper.js +3 -2
  17. package/build/common/m365/launchHelper.js.map +1 -1
  18. package/build/common/projectSettingsHelper.d.ts +7 -2
  19. package/build/common/projectSettingsHelper.d.ts.map +1 -1
  20. package/build/common/projectSettingsHelper.js +25 -7
  21. package/build/common/projectSettingsHelper.js.map +1 -1
  22. package/build/common/projectTypeChecker.d.ts +2 -0
  23. package/build/common/projectTypeChecker.d.ts.map +1 -1
  24. package/build/common/projectTypeChecker.js +13 -0
  25. package/build/common/projectTypeChecker.js.map +1 -1
  26. package/build/common/samples.d.ts +1 -2
  27. package/build/common/samples.d.ts.map +1 -1
  28. package/build/common/samples.js +37 -83
  29. package/build/common/samples.js.map +1 -1
  30. package/build/common/stringUtils.d.ts +10 -0
  31. package/build/common/stringUtils.d.ts.map +1 -0
  32. package/build/common/stringUtils.js +121 -0
  33. package/build/common/stringUtils.js.map +1 -0
  34. package/build/common/telemetry.d.ts +6 -1
  35. package/build/common/telemetry.d.ts.map +1 -1
  36. package/build/common/telemetry.js +29 -6
  37. package/build/common/telemetry.js.map +1 -1
  38. package/build/common/templates-config.json +1 -1
  39. package/build/common/wrappedAxiosClient.d.ts.map +1 -1
  40. package/build/common/wrappedAxiosClient.js +7 -5
  41. package/build/common/wrappedAxiosClient.js.map +1 -1
  42. package/build/component/configManager/constant.d.ts +2 -1
  43. package/build/component/configManager/constant.d.ts.map +1 -1
  44. package/build/component/configManager/constant.js +1 -0
  45. package/build/component/configManager/constant.js.map +1 -1
  46. package/build/component/configManager/validator.js +1 -1
  47. package/build/component/configManager/validator.js.map +1 -1
  48. package/build/component/constants.js +2 -2
  49. package/build/component/constants.js.map +1 -1
  50. package/build/component/coordinator/index.d.ts +0 -39
  51. package/build/component/coordinator/index.d.ts.map +1 -1
  52. package/build/component/coordinator/index.js +118 -202
  53. package/build/component/coordinator/index.js.map +1 -1
  54. package/build/component/driver/aad/create.d.ts +1 -0
  55. package/build/component/driver/aad/create.d.ts.map +1 -1
  56. package/build/component/driver/aad/create.js +22 -11
  57. package/build/component/driver/aad/create.js.map +1 -1
  58. package/build/component/driver/aad/error/aadManifestError.d.ts +6 -0
  59. package/build/component/driver/aad/error/aadManifestError.d.ts.map +1 -1
  60. package/build/component/driver/aad/error/aadManifestError.js +25 -1
  61. package/build/component/driver/aad/error/aadManifestError.js.map +1 -1
  62. package/build/component/driver/aad/error/clientSecretNotAllowedError.d.ts +5 -0
  63. package/build/component/driver/aad/error/clientSecretNotAllowedError.d.ts.map +1 -0
  64. package/build/component/driver/aad/error/clientSecretNotAllowedError.js +23 -0
  65. package/build/component/driver/aad/error/clientSecretNotAllowedError.js.map +1 -0
  66. package/build/component/driver/aad/error/credentialInvalidLifetimeError.d.ts +5 -0
  67. package/build/component/driver/aad/error/credentialInvalidLifetimeError.d.ts.map +1 -0
  68. package/build/component/driver/aad/error/credentialInvalidLifetimeError.js +23 -0
  69. package/build/component/driver/aad/error/credentialInvalidLifetimeError.js.map +1 -0
  70. package/build/component/driver/aad/interface/IAADDefinition.d.ts +1 -0
  71. package/build/component/driver/aad/interface/IAADDefinition.d.ts.map +1 -1
  72. package/build/component/driver/aad/interface/createAadAppArgs.d.ts +3 -0
  73. package/build/component/driver/aad/interface/createAadAppArgs.d.ts.map +1 -1
  74. package/build/component/driver/aad/permissions/index.d.ts.map +1 -1
  75. package/build/component/driver/aad/permissions/index.js +9 -0
  76. package/build/component/driver/aad/permissions/index.js.map +1 -1
  77. package/build/component/driver/aad/utility/aadAppClient.d.ts +3 -2
  78. package/build/component/driver/aad/utility/aadAppClient.d.ts.map +1 -1
  79. package/build/component/driver/aad/utility/aadAppClient.js +35 -17
  80. package/build/component/driver/aad/utility/aadAppClient.js.map +1 -1
  81. package/build/component/driver/aad/utility/aadManifestHelper.d.ts.map +1 -1
  82. package/build/component/driver/aad/utility/aadManifestHelper.js +9 -1
  83. package/build/component/driver/aad/utility/aadManifestHelper.js.map +1 -1
  84. package/build/component/driver/aad/utility/constants.d.ts +6 -0
  85. package/build/component/driver/aad/utility/constants.d.ts.map +1 -1
  86. package/build/component/driver/aad/utility/constants.js +8 -2
  87. package/build/component/driver/aad/utility/constants.js.map +1 -1
  88. package/build/component/driver/apiKey/create.d.ts +0 -3
  89. package/build/component/driver/apiKey/create.d.ts.map +1 -1
  90. package/build/component/driver/apiKey/create.js +23 -48
  91. package/build/component/driver/apiKey/create.js.map +1 -1
  92. package/build/component/driver/apiKey/interface/createApiKeyArgs.d.ts +2 -0
  93. package/build/component/driver/apiKey/interface/createApiKeyArgs.d.ts.map +1 -1
  94. package/build/component/driver/apiKey/interface/updateApiKeyArgs.d.ts +9 -0
  95. package/build/component/driver/apiKey/interface/updateApiKeyArgs.d.ts.map +1 -0
  96. package/build/component/driver/apiKey/interface/updateApiKeyArgs.js +5 -0
  97. package/build/component/driver/apiKey/interface/updateApiKeyArgs.js.map +1 -0
  98. package/build/component/driver/apiKey/update.d.ts +13 -0
  99. package/build/component/driver/apiKey/update.d.ts.map +1 -0
  100. package/build/component/driver/apiKey/update.js +182 -0
  101. package/build/component/driver/apiKey/update.js.map +1 -0
  102. package/build/component/driver/apiKey/utility/constants.d.ts +2 -0
  103. package/build/component/driver/apiKey/utility/constants.d.ts.map +1 -1
  104. package/build/component/driver/apiKey/utility/constants.js +2 -0
  105. package/build/component/driver/apiKey/utility/constants.js.map +1 -1
  106. package/build/component/driver/apiKey/utility/utility.d.ts +7 -0
  107. package/build/component/driver/apiKey/utility/utility.d.ts.map +1 -0
  108. package/build/component/driver/apiKey/utility/utility.js +55 -0
  109. package/build/component/driver/apiKey/utility/utility.js.map +1 -0
  110. package/build/component/driver/deploy/spfx/utility/spoClient.d.ts.map +1 -1
  111. package/build/component/driver/deploy/spfx/utility/spoClient.js +3 -1
  112. package/build/component/driver/deploy/spfx/utility/spoClient.js.map +1 -1
  113. package/build/component/driver/index.d.ts +1 -0
  114. package/build/component/driver/index.d.ts.map +1 -1
  115. package/build/component/driver/index.js +1 -0
  116. package/build/component/driver/index.js.map +1 -1
  117. package/build/component/driver/middleware/addSWADeployTelemetry.js +2 -2
  118. package/build/component/driver/middleware/addSWADeployTelemetry.js.map +1 -1
  119. package/build/component/driver/oauth/create.d.ts +12 -0
  120. package/build/component/driver/oauth/create.d.ts.map +1 -0
  121. package/build/component/driver/oauth/create.js +179 -0
  122. package/build/component/driver/oauth/create.js.map +1 -0
  123. package/build/component/driver/oauth/error/oauthAuthInfoInvalid.d.ts +5 -0
  124. package/build/component/driver/oauth/error/oauthAuthInfoInvalid.d.ts.map +1 -0
  125. package/build/component/driver/oauth/error/oauthAuthInfoInvalid.js +21 -0
  126. package/build/component/driver/oauth/error/oauthAuthInfoInvalid.js.map +1 -0
  127. package/build/component/driver/oauth/error/oauthDomainInvalid.d.ts +5 -0
  128. package/build/component/driver/oauth/error/oauthDomainInvalid.d.ts.map +1 -0
  129. package/build/component/driver/oauth/error/oauthDomainInvalid.js +22 -0
  130. package/build/component/driver/oauth/error/oauthDomainInvalid.js.map +1 -0
  131. package/build/component/driver/oauth/error/oauthFailedToGetDomain.d.ts +5 -0
  132. package/build/component/driver/oauth/error/oauthFailedToGetDomain.d.ts.map +1 -0
  133. package/build/component/driver/oauth/error/oauthFailedToGetDomain.js +21 -0
  134. package/build/component/driver/oauth/error/oauthFailedToGetDomain.js.map +1 -0
  135. package/build/component/driver/oauth/error/oauthNameTooLong.d.ts +5 -0
  136. package/build/component/driver/oauth/error/oauthNameTooLong.d.ts.map +1 -0
  137. package/build/component/driver/oauth/error/oauthNameTooLong.js +21 -0
  138. package/build/component/driver/oauth/error/oauthNameTooLong.js.map +1 -0
  139. package/build/component/driver/oauth/interface/createOauthArgs.d.ts +12 -0
  140. package/build/component/driver/oauth/interface/createOauthArgs.d.ts.map +1 -0
  141. package/build/component/driver/oauth/interface/createOauthArgs.js +5 -0
  142. package/build/component/driver/oauth/interface/createOauthArgs.js.map +1 -0
  143. package/build/component/driver/oauth/interface/createOauthOutputs.d.ts +7 -0
  144. package/build/component/driver/oauth/interface/createOauthOutputs.d.ts.map +1 -0
  145. package/build/component/driver/oauth/interface/createOauthOutputs.js +10 -0
  146. package/build/component/driver/oauth/interface/createOauthOutputs.js.map +1 -0
  147. package/build/component/driver/oauth/utility/constants.d.ts +11 -0
  148. package/build/component/driver/oauth/utility/constants.d.ts.map +1 -0
  149. package/build/component/driver/oauth/utility/constants.js +16 -0
  150. package/build/component/driver/oauth/utility/constants.js.map +1 -0
  151. package/build/component/driver/oauth/utility/utility.d.ts +11 -0
  152. package/build/component/driver/oauth/utility/utility.d.ts.map +1 -0
  153. package/build/component/driver/oauth/utility/utility.js +83 -0
  154. package/build/component/driver/oauth/utility/utility.js.map +1 -0
  155. package/build/component/driver/script/scriptDriver.d.ts.map +1 -1
  156. package/build/component/driver/script/scriptDriver.js +8 -8
  157. package/build/component/driver/script/scriptDriver.js.map +1 -1
  158. package/build/component/driver/teamsApp/clients/appStudioClient.d.ts +10 -3
  159. package/build/component/driver/teamsApp/clients/appStudioClient.d.ts.map +1 -1
  160. package/build/component/driver/teamsApp/clients/appStudioClient.js +54 -2
  161. package/build/component/driver/teamsApp/clients/appStudioClient.js.map +1 -1
  162. package/build/component/driver/teamsApp/constants.d.ts +4 -0
  163. package/build/component/driver/teamsApp/constants.d.ts.map +1 -1
  164. package/build/component/driver/teamsApp/constants.js +4 -0
  165. package/build/component/driver/teamsApp/constants.js.map +1 -1
  166. package/build/component/driver/teamsApp/createAppPackage.d.ts +2 -1
  167. package/build/component/driver/teamsApp/createAppPackage.d.ts.map +1 -1
  168. package/build/component/driver/teamsApp/createAppPackage.js +38 -23
  169. package/build/component/driver/teamsApp/createAppPackage.js.map +1 -1
  170. package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.d.ts +20 -0
  171. package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.d.ts.map +1 -1
  172. package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.js.map +1 -1
  173. package/build/component/driver/teamsApp/interfaces/OauthRegistration.d.ts +44 -0
  174. package/build/component/driver/teamsApp/interfaces/OauthRegistration.d.ts.map +1 -0
  175. package/build/component/driver/teamsApp/interfaces/OauthRegistration.js +21 -0
  176. package/build/component/driver/teamsApp/interfaces/OauthRegistration.js.map +1 -0
  177. package/build/component/driver/teamsApp/teamsappMgr.d.ts.map +1 -1
  178. package/build/component/driver/teamsApp/teamsappMgr.js +22 -8
  179. package/build/component/driver/teamsApp/teamsappMgr.js.map +1 -1
  180. package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts.map +1 -1
  181. package/build/component/driver/teamsApp/utils/ManifestUtils.js +3 -15
  182. package/build/component/driver/teamsApp/utils/ManifestUtils.js.map +1 -1
  183. package/build/component/driver/teamsApp/utils/telemetry.d.ts +1 -0
  184. package/build/component/driver/teamsApp/utils/telemetry.d.ts.map +1 -1
  185. package/build/component/driver/teamsApp/utils/telemetry.js +1 -0
  186. package/build/component/driver/teamsApp/utils/telemetry.js.map +1 -1
  187. package/build/component/driver/teamsApp/utils/utils.d.ts +1 -0
  188. package/build/component/driver/teamsApp/utils/utils.d.ts.map +1 -1
  189. package/build/component/driver/teamsApp/utils/utils.js +5 -1
  190. package/build/component/driver/teamsApp/utils/utils.js.map +1 -1
  191. package/build/component/driver/teamsApp/validateTestCases.d.ts +18 -0
  192. package/build/component/driver/teamsApp/validateTestCases.d.ts.map +1 -1
  193. package/build/component/driver/teamsApp/validateTestCases.js +132 -50
  194. package/build/component/driver/teamsApp/validateTestCases.js.map +1 -1
  195. package/build/component/generator/copilotPlugin/generator.d.ts.map +1 -1
  196. package/build/component/generator/copilotPlugin/generator.js +4 -5
  197. package/build/component/generator/copilotPlugin/generator.js.map +1 -1
  198. package/build/component/generator/copilotPlugin/helper.d.ts +2 -2
  199. package/build/component/generator/copilotPlugin/helper.d.ts.map +1 -1
  200. package/build/component/generator/copilotPlugin/helper.js +94 -42
  201. package/build/component/generator/copilotPlugin/helper.js.map +1 -1
  202. package/build/component/generator/generator.d.ts +2 -1
  203. package/build/component/generator/generator.d.ts.map +1 -1
  204. package/build/component/generator/generator.js +5 -3
  205. package/build/component/generator/generator.js.map +1 -1
  206. package/build/component/generator/generatorProvider.d.ts +3 -0
  207. package/build/component/generator/generatorProvider.d.ts.map +1 -0
  208. package/build/component/generator/generatorProvider.js +9 -0
  209. package/build/component/generator/generatorProvider.js.map +1 -0
  210. package/build/component/generator/officeAddin/generator.d.ts +16 -2
  211. package/build/component/generator/officeAddin/generator.d.ts.map +1 -1
  212. package/build/component/generator/officeAddin/generator.js +97 -44
  213. package/build/component/generator/officeAddin/generator.js.map +1 -1
  214. package/build/component/generator/officeAddin/helperMethods.d.ts +0 -3
  215. package/build/component/generator/officeAddin/helperMethods.d.ts.map +1 -1
  216. package/build/component/generator/officeAddin/helperMethods.js +0 -65
  217. package/build/component/generator/officeAddin/helperMethods.js.map +1 -1
  218. package/build/component/generator/officeXMLAddin/generator.d.ts +6 -2
  219. package/build/component/generator/officeXMLAddin/generator.d.ts.map +1 -1
  220. package/build/component/generator/officeXMLAddin/generator.js +39 -19
  221. package/build/component/generator/officeXMLAddin/generator.js.map +1 -1
  222. package/build/component/generator/officeXMLAddin/projectConfig.d.ts +21 -33
  223. package/build/component/generator/officeXMLAddin/projectConfig.d.ts.map +1 -1
  224. package/build/component/generator/officeXMLAddin/projectConfig.js +85 -86
  225. package/build/component/generator/officeXMLAddin/projectConfig.js.map +1 -1
  226. package/build/component/generator/templates/templateGenerator.d.ts +13 -0
  227. package/build/component/generator/templates/templateGenerator.d.ts.map +1 -0
  228. package/build/component/generator/templates/templateGenerator.js +136 -0
  229. package/build/component/generator/templates/templateGenerator.js.map +1 -0
  230. package/build/component/generator/templates/templateInfo.d.ts +10 -0
  231. package/build/component/generator/templates/templateInfo.d.ts.map +1 -0
  232. package/build/component/generator/templates/templateInfo.js +3 -0
  233. package/build/component/generator/templates/templateInfo.js.map +1 -0
  234. package/build/component/generator/templates/templateNames.d.ts +44 -0
  235. package/build/component/generator/templates/templateNames.d.ts.map +1 -0
  236. package/build/component/generator/templates/templateNames.js +88 -0
  237. package/build/component/generator/templates/templateNames.js.map +1 -0
  238. package/build/component/generator/templates/templateReplaceMap.d.ts +5 -0
  239. package/build/component/generator/templates/templateReplaceMap.d.ts.map +1 -0
  240. package/build/component/generator/templates/templateReplaceMap.js +39 -0
  241. package/build/component/generator/templates/templateReplaceMap.js.map +1 -0
  242. package/build/component/generator/utils.d.ts +1 -0
  243. package/build/component/generator/utils.d.ts.map +1 -1
  244. package/build/component/generator/utils.js +2 -1
  245. package/build/component/generator/utils.js.map +1 -1
  246. package/build/component/middleware/actionExecutionMW.d.ts.map +1 -1
  247. package/build/component/middleware/actionExecutionMW.js +5 -4
  248. package/build/component/middleware/actionExecutionMW.js.map +1 -1
  249. package/build/component/middleware/questionMW.d.ts.map +1 -1
  250. package/build/component/middleware/questionMW.js +9 -1
  251. package/build/component/middleware/questionMW.js.map +1 -1
  252. package/build/component/utils/envUtil.d.ts +0 -1
  253. package/build/component/utils/envUtil.d.ts.map +1 -1
  254. package/build/component/utils/envUtil.js +1 -13
  255. package/build/component/utils/envUtil.js.map +1 -1
  256. package/build/component/utils/metadataGraphPermssion.d.ts +8 -6
  257. package/build/component/utils/metadataGraphPermssion.d.ts.map +1 -1
  258. package/build/component/utils/metadataGraphPermssion.js +10 -2
  259. package/build/component/utils/metadataGraphPermssion.js.map +1 -1
  260. package/build/component/utils/metadataRscPermission.d.ts +16 -0
  261. package/build/component/utils/metadataRscPermission.d.ts.map +1 -0
  262. package/build/component/utils/metadataRscPermission.js +69 -0
  263. package/build/component/utils/metadataRscPermission.js.map +1 -0
  264. package/build/component/utils/metadataUtil.d.ts.map +1 -1
  265. package/build/component/utils/metadataUtil.js +2 -0
  266. package/build/component/utils/metadataUtil.js.map +1 -1
  267. package/build/component/utils.d.ts +2 -1
  268. package/build/component/utils.d.ts.map +1 -1
  269. package/build/component/utils.js +43 -1
  270. package/build/component/utils.js.map +1 -1
  271. package/build/core/FxCore.d.ts +3 -3
  272. package/build/core/FxCore.d.ts.map +1 -1
  273. package/build/core/FxCore.js +82 -17
  274. package/build/core/FxCore.js.map +1 -1
  275. package/build/error/common.js +1 -1
  276. package/build/error/common.js.map +1 -1
  277. package/build/error/script.d.ts +2 -2
  278. package/build/error/script.d.ts.map +1 -1
  279. package/build/error/script.js +6 -6
  280. package/build/error/script.js.map +1 -1
  281. package/build/index.d.ts +3 -0
  282. package/build/index.d.ts.map +1 -1
  283. package/build/index.js +5 -1
  284. package/build/index.js.map +1 -1
  285. package/build/question/constants.d.ts.map +1 -1
  286. package/build/question/constants.js +6 -1
  287. package/build/question/constants.js.map +1 -1
  288. package/build/question/create.d.ts +17 -8
  289. package/build/question/create.d.ts.map +1 -1
  290. package/build/question/create.js +323 -236
  291. package/build/question/create.js.map +1 -1
  292. package/build/question/inputs/CreateProjectInputs.d.ts +8 -6
  293. package/build/question/inputs/CreateProjectInputs.d.ts.map +1 -1
  294. package/build/question/options/CreateProjectOptions.d.ts.map +1 -1
  295. package/build/question/options/CreateProjectOptions.js +37 -11
  296. package/build/question/options/CreateProjectOptions.js.map +1 -1
  297. package/build/question/questionNames.d.ts +1 -1
  298. package/build/question/questionNames.d.ts.map +1 -1
  299. package/build/question/questionNames.js +1 -1
  300. package/build/question/questionNames.js.map +1 -1
  301. package/package.json +11 -6
  302. package/resource/package.nls.json +96 -46
  303. package/resource/yaml-schema/v1.5/yaml.schema.json +1663 -0
  304. package/resource/yaml-schema/yaml.schema.json +77 -2
  305. package/templates/fallback/common.zip +0 -0
  306. package/templates/fallback/csharp.zip +0 -0
  307. package/templates/fallback/js.zip +0 -0
  308. package/templates/fallback/python.zip +0 -0
  309. package/templates/fallback/ts.zip +0 -0
  310. package/build/component/generator/officeAddin/config/projectsJsonData.d.ts +0 -26
  311. package/build/component/generator/officeAddin/config/projectsJsonData.d.ts.map +0 -1
  312. package/build/component/generator/officeAddin/config/projectsJsonData.js +0 -165
  313. package/build/component/generator/officeAddin/config/projectsJsonData.js.map +0 -1
@@ -2,32 +2,39 @@
2
2
  // Copyright (c) Microsoft Corporation.
3
3
  // Licensed under the MIT license.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.OfficeAddinGenerator = void 0;
5
+ exports.OfficeAddinGeneratorNew = exports.getHost = exports.OfficeAddinGenerator = void 0;
6
6
  const tslib_1 = require("tslib");
7
7
  /**
8
8
  * @author yefuwang@microsoft.com
9
9
  */
10
+ const lib_1 = require("@feathersjs/hooks/lib");
10
11
  const teamsfx_api_1 = require("@microsoft/teamsfx-api");
11
- const path_1 = require("path");
12
- const helperMethods_1 = require("./helperMethods");
13
- const office_addin_manifest_1 = require("office-addin-manifest");
14
- const projectsJsonData_1 = tslib_1.__importDefault(require("./config/projectsJsonData"));
15
12
  const childProcess = tslib_1.__importStar(require("child_process"));
16
- const util_1 = require("util");
17
- const lodash_1 = tslib_1.__importDefault(require("lodash"));
18
- const lib_1 = require("@feathersjs/hooks/lib");
19
- const actionExecutionMW_1 = require("../../middleware/actionExecutionMW");
20
- const generator_1 = require("../generator");
13
+ const office_addin_manifest_1 = require("office-addin-manifest");
21
14
  const office_addin_project_1 = require("office-addin-project");
22
- const questionNames_1 = require("../../../question/questionNames");
23
- const create_1 = require("../../../question/create");
15
+ const path_1 = require("path");
16
+ const util_1 = require("util");
24
17
  const localizeUtils_1 = require("../../../common/localizeUtils");
25
18
  const error_1 = require("../../../error");
26
- const featureFlags_1 = require("../../../common/featureFlags");
19
+ const create_1 = require("../../../question/create");
20
+ const questionNames_1 = require("../../../question/questionNames");
21
+ const actionExecutionMW_1 = require("../../middleware/actionExecutionMW");
22
+ const generator_1 = require("../generator");
23
+ const projectConfig_1 = require("../officeXMLAddin/projectConfig");
24
+ const helperMethods_1 = require("./helperMethods");
25
+ const lodash_1 = require("lodash");
26
+ const utils_1 = require("../utils");
27
+ const templateGenerator_1 = require("../templates/templateGenerator");
28
+ const utils_2 = require("../../utils");
27
29
  const componentName = "office-addin";
28
30
  const telemetryEvent = "generate";
29
31
  const templateName = "office-addin";
30
32
  const templateNameForWXPO = "office-json-addin";
33
+ /**
34
+ * case 1: project-type=office-xml-addin-type AND addin-host=outlook
35
+ * case 2: project-type=office-addin-type (addin-host=undefined)
36
+ * case 3: project-type=outlook-addin-type (addin-host=undefined)
37
+ */
31
38
  class OfficeAddinGenerator {
32
39
  static async generate(context, inputs, destinationPath) {
33
40
  const result = await OfficeAddinGenerator.doScaffolding(context, inputs, destinationPath);
@@ -35,8 +42,11 @@ class OfficeAddinGenerator {
35
42
  return teamsfx_api_1.err(result.error);
36
43
  }
37
44
  // If lang is undefined, it means the project is created from a folder.
38
- const lang = inputs[questionNames_1.QuestionNames.ProgrammingLanguage];
39
- const langKey = lang != "No Options" ? ((lang === null || lang === void 0 ? void 0 : lang.toLowerCase()) === "typescript" ? "ts" : "js") : undefined;
45
+ const lang = lodash_1.toLower(inputs[questionNames_1.QuestionNames.ProgrammingLanguage]);
46
+ const langKey = inputs[questionNames_1.QuestionNames.Capabilities] === create_1.CapabilityOptions.outlookAddinImport().id ||
47
+ inputs[questionNames_1.QuestionNames.Capabilities] === create_1.CapabilityOptions.officeAddinImport().id
48
+ ? "ts"
49
+ : utils_1.convertToLangKey(lang);
40
50
  const templateRes = await generator_1.Generator.generateTemplate(context, destinationPath, inputs[questionNames_1.QuestionNames.ProjectType] === create_1.ProjectTypeOptions.officeAddin().id
41
51
  ? templateNameForWXPO
42
52
  : templateName, langKey);
@@ -48,43 +58,54 @@ class OfficeAddinGenerator {
48
58
  return util_1.promisify(childProcess.exec)(cmdLine);
49
59
  }
50
60
  static async doScaffolding(context, inputs, destinationPath) {
51
- const template = create_1.getTemplate(inputs);
52
61
  const name = inputs[questionNames_1.QuestionNames.AppName];
53
62
  const addinRoot = destinationPath;
54
63
  const fromFolder = inputs[questionNames_1.QuestionNames.OfficeAddinFolder];
55
- const language = inputs[questionNames_1.QuestionNames.ProgrammingLanguage];
56
- const host = featureFlags_1.isOfficeXMLAddinEnabled()
57
- ? inputs[questionNames_1.QuestionNames.OfficeAddinCapability] === create_1.ProjectTypeOptions.outlookAddin().id
58
- ? "Outlook"
59
- : inputs[questionNames_1.QuestionNames.OfficeAddinCapability]
60
- : inputs[questionNames_1.QuestionNames.OfficeAddinHost];
64
+ const language = lodash_1.toLower(inputs[questionNames_1.QuestionNames.ProgrammingLanguage]);
65
+ const projectType = inputs[questionNames_1.QuestionNames.ProjectType];
66
+ const capability = inputs[questionNames_1.QuestionNames.Capabilities];
67
+ const inputHost = inputs[questionNames_1.QuestionNames.OfficeAddinHost];
68
+ let host = inputHost;
69
+ if (projectType === create_1.ProjectTypeOptions.outlookAddin().id ||
70
+ (projectType === create_1.ProjectTypeOptions.officeXMLAddin().id &&
71
+ inputHost === create_1.OfficeAddinHostOptions.outlook().id)) {
72
+ host = "outlook";
73
+ }
74
+ else if (projectType === create_1.ProjectTypeOptions.officeAddin().id) {
75
+ if (capability === "json-taskpane") {
76
+ host = "wxpo"; // wxpo - support word, excel, powerpoint, outlook
77
+ }
78
+ else if (capability === create_1.CapabilityOptions.officeContentAddin().id) {
79
+ host = "xp"; // content add-in support excel, powerpoint
80
+ }
81
+ }
61
82
  const workingDir = process.cwd();
62
- const importProgress = context.userInteraction.createProgressBar(localizeUtils_1.getLocalizedString("core.generator.officeAddin.importProject.title"), 3);
83
+ const importProgressStr = projectType === create_1.ProjectTypeOptions.officeAddin().id
84
+ ? localizeUtils_1.getLocalizedString("core.generator.officeAddin.importOfficeProject.title")
85
+ : localizeUtils_1.getLocalizedString("core.generator.officeAddin.importProject.title");
86
+ const importProgress = context.userInteraction.createProgressBar(importProgressStr, 3);
63
87
  process.chdir(addinRoot);
64
88
  try {
65
89
  if (!fromFolder) {
66
90
  // from template
67
- const jsonData = new projectsJsonData_1.default();
68
- const isOfficeAddin = inputs[questionNames_1.QuestionNames.ProjectType] === create_1.ProjectTypeOptions.officeAddin().id;
69
- const framework = isOfficeAddin ? inputs[questionNames_1.QuestionNames.OfficeAddinFramework] : undefined;
70
- const projectLink = isOfficeAddin
71
- ? jsonData.getProjectDownloadLinkNew(template, language, framework)
72
- : jsonData.getProjectDownloadLink(template, language);
91
+ const framework = create_1.getOfficeAddinFramework(inputs);
92
+ const templateConfig = projectConfig_1.getOfficeAddinTemplateConfig(projectType, inputs[questionNames_1.QuestionNames.OfficeAddinHost]);
93
+ const projectLink = templateConfig[capability].framework[framework][language];
73
94
  // Copy project template files from project repository
74
95
  if (projectLink) {
75
- await helperMethods_1.HelperMethods.downloadProjectTemplateZipFile(addinRoot, projectLink);
96
+ const fetchRes = await utils_2.fetchAndUnzip("office-addin-generator", projectLink, addinRoot);
97
+ if (fetchRes.isErr()) {
98
+ return teamsfx_api_1.err(fetchRes.error);
99
+ }
100
+ let cmdLine = ""; // Call 'convert-to-single-host' npm script in generated project, passing in host parameter
76
101
  if (inputs[questionNames_1.QuestionNames.ProjectType] === create_1.ProjectTypeOptions.officeAddin().id) {
77
- // Call 'convert-to-single-host' npm script in generated project, passing in host parameter
78
- const cmdLine = `npm run convert-to-single-host --if-present -- ${lodash_1.default.toLower("wxpo" // support word, excel, powerpoint, outlook
79
- )} ${"json"}`;
80
- await OfficeAddinGenerator.childProcessExec(cmdLine);
102
+ cmdLine = `npm run convert-to-single-host --if-present -- ${host} json`;
81
103
  }
82
104
  else {
83
- // Call 'convert-to-single-host' npm script in generated project, passing in host parameter
84
- const cmdLine = `npm run convert-to-single-host --if-present -- ${lodash_1.default.toLower(host)}`;
85
- await OfficeAddinGenerator.childProcessExec(cmdLine);
105
+ cmdLine = `npm run convert-to-single-host --if-present -- ${host}`;
86
106
  }
87
- const manifestPath = jsonData.getManifestPath(template);
107
+ await OfficeAddinGenerator.childProcessExec(cmdLine);
108
+ const manifestPath = templateConfig[capability].manifestPath;
88
109
  // modify manifest guid and DisplayName
89
110
  await office_addin_manifest_1.OfficeAddinManifest.modifyManifestFile(`${path_1.join(addinRoot, manifestPath)}`, "random", `${name}`);
90
111
  await helperMethods_1.HelperMethods.moveManifestLocation(addinRoot, manifestPath);
@@ -138,19 +159,51 @@ async function getHost(addinManifestPath) {
138
159
  const addinManifest = await teamsfx_api_1.ManifestUtil.loadFromPath(addinManifestPath);
139
160
  let host = "Outlook";
140
161
  switch ((_c = (_b = (_a = addinManifest.extensions) === null || _a === void 0 ? void 0 : _a[0].requirements) === null || _b === void 0 ? void 0 : _b.scopes) === null || _c === void 0 ? void 0 : _c[0]) {
141
- // case "document":
142
- // host = "Word";
162
+ case "document":
163
+ host = "Word";
164
+ break;
143
165
  case "mail":
144
166
  host = "Outlook";
167
+ break;
145
168
  // case "notebook":
146
169
  // host = "OneNote";
147
- // case "presentation":
148
- // host = "PowerPoint";
170
+ case "presentation":
171
+ host = "PowerPoint";
172
+ break;
149
173
  // case "project":
150
174
  // host = "Project";
151
- // case "workbook":
152
- // host = "Excel";
175
+ case "workbook":
176
+ host = "Excel";
177
+ break;
153
178
  }
154
179
  return host;
155
180
  }
181
+ exports.getHost = getHost;
182
+ class OfficeAddinGeneratorNew extends templateGenerator_1.DefaultTemplateGenerator {
183
+ constructor() {
184
+ super(...arguments);
185
+ this.componentName = "office-addin-generator";
186
+ }
187
+ // activation condition
188
+ activate(context, inputs) {
189
+ const projectType = inputs[questionNames_1.QuestionNames.ProjectType];
190
+ return create_1.ProjectTypeOptions.officeAddinAllIds().includes(projectType);
191
+ }
192
+ async getTemplateInfos(context, inputs, actionContext) {
193
+ const projectType = inputs[questionNames_1.QuestionNames.ProjectType];
194
+ const tplName = projectType === create_1.ProjectTypeOptions.officeAddin().id ? templateNameForWXPO : templateName;
195
+ let lang = lodash_1.toLower(inputs[questionNames_1.QuestionNames.ProgrammingLanguage]);
196
+ lang =
197
+ inputs[questionNames_1.QuestionNames.Capabilities] === create_1.CapabilityOptions.outlookAddinImport().id ||
198
+ inputs[questionNames_1.QuestionNames.Capabilities] === create_1.CapabilityOptions.officeAddinImport().id
199
+ ? create_1.ProgrammingLanguage.TS
200
+ : lang;
201
+ const replaceMap = {};
202
+ return Promise.resolve(teamsfx_api_1.ok([{ templateName: tplName, language: lang, replaceMap }]));
203
+ }
204
+ async post(context, inputs, destinationPath, actionContext) {
205
+ return await OfficeAddinGenerator.doScaffolding(context, inputs, destinationPath);
206
+ }
207
+ }
208
+ exports.OfficeAddinGeneratorNew = OfficeAddinGeneratorNew;
156
209
  //# sourceMappingURL=generator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../src/component/generator/officeAddin/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../src/component/generator/officeAddin/generator.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,4 @@
1
1
  export declare class HelperMethods {
2
- static downloadProjectTemplateZipFile(projectFolder: string, projectRepo: string): Promise<void>;
3
- static unzipProjectTemplate(projectFolder: string): Promise<void>;
4
- static moveUnzippedFiles(projectFolder: string): void;
5
2
  static copyAddinFiles(fromFolder: string, toFolder: string): void;
6
3
  static updateManifest(projectRoot: string, addinManifestPath: string): Promise<void>;
7
4
  static moveManifestLocation(projectRoot: string, manifestRelativePath: string): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"helperMethods.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/officeAddin/helperMethods.ts"],"names":[],"mappings":"AAiBA,qBAAa,aAAa;WACX,8BAA8B,CACzC,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC;WAqCH,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBvE,MAAM,CAAC,iBAAiB,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;IAoBrD,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;WAMpD,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;WAwB7E,oBAAoB,CAC/B,WAAW,EAAE,MAAM,EACnB,oBAAoB,EAAE,MAAM,GAC3B,OAAO,CAAC,IAAI,CAAC;CA2CjB;AAED,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CAKxF"}
1
+ {"version":3,"file":"helperMethods.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/officeAddin/helperMethods.ts"],"names":[],"mappings":"AAiBA,qBAAa,aAAa;IACxB,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;WAMpD,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;WAwB7E,oBAAoB,CAC/B,WAAW,EAAE,MAAM,EACnB,oBAAoB,EAAE,MAAM,GAC3B,OAAO,CAAC,IAAI,CAAC;CA2CjB;AAED,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CAKxF"}
@@ -8,77 +8,12 @@ const tslib_1 = require("tslib");
8
8
  * @author darrmill@microsoft.com, yefuwang@microsoft.com
9
9
  */
10
10
  const teamsfx_api_1 = require("@microsoft/teamsfx-api");
11
- const fs_1 = tslib_1.__importDefault(require("fs"));
12
11
  const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
13
12
  const path = tslib_1.__importStar(require("path"));
14
- const unzip = tslib_1.__importStar(require("unzipper"));
15
13
  const ManifestUtils_1 = require("../../driver/teamsApp/utils/ManifestUtils");
16
- const node_fetch_1 = tslib_1.__importDefault(require("node-fetch"));
17
14
  const common_1 = require("../../../error/common");
18
15
  const zipFile = "project.zip";
19
16
  class HelperMethods {
20
- static async downloadProjectTemplateZipFile(projectFolder, projectRepo) {
21
- const projectTemplateZipFile = projectRepo;
22
- let response;
23
- try {
24
- response = await node_fetch_1.default(projectTemplateZipFile, { method: "GET" });
25
- }
26
- catch (e) {
27
- throw new common_1.AccessGithubError(projectTemplateZipFile, "OfficeAddinGenerator", e);
28
- }
29
- return new Promise((resolve, reject) => {
30
- if (response.body) {
31
- response.body
32
- .pipe(fs_1.default.createWriteStream(path.resolve(projectFolder, zipFile)))
33
- .on("error", (err) => {
34
- reject(new common_1.AccessGithubError(projectTemplateZipFile, "OfficeAddinGenerator", err));
35
- })
36
- .on("close", () => {
37
- HelperMethods.unzipProjectTemplate(projectFolder)
38
- .then(() => {
39
- resolve();
40
- })
41
- .catch((err) => {
42
- reject(err);
43
- });
44
- });
45
- }
46
- else {
47
- reject(new common_1.AccessGithubError(projectTemplateZipFile, "OfficeAddinGenerator", new Error(`Response body of GET "${projectTemplateZipFile}" is null.`)));
48
- }
49
- });
50
- }
51
- static async unzipProjectTemplate(projectFolder) {
52
- return new Promise((resolve, reject) => {
53
- // TODO: Verify file exists
54
- const readStream = fs_1.default.createReadStream(path.resolve(`${projectFolder}/${zipFile}`));
55
- readStream
56
- .pipe(unzip.Extract({ path: projectFolder }))
57
- .on("error", function (err) {
58
- unzipErrorHandler(projectFolder, reject, err);
59
- })
60
- .on("close", () => {
61
- HelperMethods.moveUnzippedFiles(projectFolder);
62
- resolve();
63
- });
64
- });
65
- }
66
- static moveUnzippedFiles(projectFolder) {
67
- // delete original zip file
68
- const zipFilePath = path.resolve(`${projectFolder}/${zipFile}`);
69
- if (fs_1.default.existsSync(zipFilePath)) {
70
- fs_1.default.unlinkSync(zipFilePath);
71
- }
72
- // get path to unzipped folder
73
- const unzippedFolder = fs_1.default.readdirSync(projectFolder).filter(function (file) {
74
- return fs_1.default.statSync(`${projectFolder}/${file}`).isDirectory();
75
- });
76
- // construct paths to move files out of unzipped folder into project root folder
77
- const fromFolder = path.resolve(`${projectFolder}/${unzippedFolder[0]}`);
78
- HelperMethods.copyAddinFiles(fromFolder, projectFolder);
79
- // delete project zipped folder
80
- fs_1.default.rmSync(fromFolder, { recursive: true, force: true });
81
- }
82
17
  static copyAddinFiles(fromFolder, toFolder) {
83
18
  fs_extra_1.default.copySync(fromFolder, toFolder, {
84
19
  filter: (path) => !path.includes("node_modules"),
@@ -1 +1 @@
1
- {"version":3,"file":"helperMethods.js","sourceRoot":"","sources":["../../../../src/component/generator/officeAddin/helperMethods.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helperMethods.js","sourceRoot":"","sources":["../../../../src/component/generator/officeAddin/helperMethods.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,10 @@
1
- import { FxError, Inputs, Result, Context } from "@microsoft/teamsfx-api";
1
+ import { Context, FxError, Inputs, Result } from "@microsoft/teamsfx-api";
2
+ import { ActionContext } from "../../middleware/actionExecutionMW";
3
+ /**
4
+ * project-type=office-xml-addin-type addin-host!==outlook
5
+ */
2
6
  export declare class OfficeXMLAddinGenerator {
3
- static generate(context: Context, inputs: Inputs, destinationPath: string): Promise<Result<undefined, FxError>>;
7
+ static generate(context: Context, inputs: Inputs, destinationPath: string, actionContext?: ActionContext): Promise<Result<undefined, FxError>>;
4
8
  static childProcessExec(cmdLine: string): Promise<{
5
9
  stdout: string;
6
10
  stderr: string;
@@ -1 +1 @@
1
- {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/officeXMLAddin/generator.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAW,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAsBnF,qBAAa,uBAAuB;WASrB,QAAQ,CACnB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;WAsElB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAC7D,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CAGH"}
1
+ {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/officeXMLAddin/generator.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAW,MAAM,wBAAwB,CAAC;AASnF,OAAO,EAAqB,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAmBtF;;GAEG;AACH,qBAAa,uBAAuB;WASrB,QAAQ,CACnB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,aAAa,CAAC,EAAE,aAAa,GAC5B,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;WAgGlB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAC7D,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CAGH"}
@@ -10,55 +10,75 @@ const tslib_1 = require("tslib");
10
10
  const lib_1 = require("@feathersjs/hooks/lib");
11
11
  const teamsfx_api_1 = require("@microsoft/teamsfx-api");
12
12
  const childProcess = tslib_1.__importStar(require("child_process"));
13
- const lodash_1 = tslib_1.__importDefault(require("lodash"));
13
+ const lodash_1 = tslib_1.__importStar(require("lodash"));
14
14
  const office_addin_manifest_1 = require("office-addin-manifest");
15
15
  const path_1 = require("path");
16
16
  const util_1 = require("util");
17
- const generator_1 = require("../generator");
18
- const helperMethods_1 = require("../officeAddin/helperMethods");
19
- const actionExecutionMW_1 = require("../../middleware/actionExecutionMW");
17
+ const localizeUtils_1 = require("../../../common/localizeUtils");
20
18
  const error_1 = require("../../../error");
21
- const create_1 = require("../../../question/create");
22
19
  const questionNames_1 = require("../../../question/questionNames");
20
+ const actionExecutionMW_1 = require("../../middleware/actionExecutionMW");
21
+ const generator_1 = require("../generator");
23
22
  const projectConfig_1 = require("./projectConfig");
24
- const localizeUtils_1 = require("../../../common/localizeUtils");
23
+ const utils_1 = require("../utils");
24
+ const utils_2 = require("../../utils");
25
25
  const COMPONENT_NAME = "office-xml-addin";
26
26
  const TELEMETRY_EVENT = "generate";
27
27
  const TEMPLATE_BASE = "office-xml-addin";
28
+ const TEMPLATE_COMMON_NAME = "office-xml-addin-common";
29
+ const TEMPLATE_COMMON_LANG = "common";
30
+ /**
31
+ * project-type=office-xml-addin-type addin-host!==outlook
32
+ */
28
33
  class OfficeXMLAddinGenerator {
29
- static async generate(context, inputs, destinationPath) {
30
- const host = inputs[questionNames_1.QuestionNames.OfficeAddinCapability];
31
- const project = inputs[questionNames_1.QuestionNames.Capabilities];
32
- const lang = inputs[questionNames_1.QuestionNames.ProgrammingLanguage] === create_1.ProgrammingLanguage.TS ? "ts" : "js";
34
+ static async generate(context, inputs, destinationPath, actionContext) {
35
+ const host = inputs[questionNames_1.QuestionNames.OfficeAddinHost];
36
+ const capability = inputs[questionNames_1.QuestionNames.Capabilities];
37
+ const lang = lodash_1.default.toLower(inputs[questionNames_1.QuestionNames.ProgrammingLanguage]);
38
+ const langKey = utils_1.convertToLangKey(lang);
33
39
  const appName = inputs[questionNames_1.QuestionNames.AppName];
34
- const templateName = projectConfig_1.getOfficeXMLAddinHostProjectTemplateName(host, project);
35
- const repoInfo = projectConfig_1.getOfficeXMLAddinHostProjectRepoInfo(host, project, lang);
40
+ const projectType = inputs[questionNames_1.QuestionNames.ProjectType];
41
+ const templateConfig = projectConfig_1.getOfficeAddinTemplateConfig(projectType, host);
42
+ const templateName = templateConfig[capability].localTemplate;
43
+ const projectLink = templateConfig[capability].framework["default"][lang];
36
44
  const workingDir = process.cwd();
37
45
  const progressBar = context.userInteraction.createProgressBar(localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.bar.title"), 1);
46
+ lodash_1.merge(actionContext === null || actionContext === void 0 ? void 0 : actionContext.telemetryProps, {
47
+ ["office-xml-addin-host" /* host */]: host,
48
+ ["office-xml-addin-project" /* project */]: capability,
49
+ ["office-xml-addin-lang" /* lang */]: lang,
50
+ });
38
51
  try {
39
52
  process.chdir(destinationPath);
40
53
  await progressBar.start();
41
54
  await progressBar.next(localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.bar.detail"));
42
- if (!!repoInfo) {
55
+ if (!!projectLink) {
43
56
  // [Condition]: Project have remote repo (not manifest-only proj)
44
57
  // -> Step: Download the project from GitHub
45
- await helperMethods_1.HelperMethods.downloadProjectTemplateZipFile(destinationPath, repoInfo);
58
+ const fetchRes = await utils_2.fetchAndUnzip("office-xml-addin-generator", projectLink, destinationPath);
59
+ if (fetchRes.isErr()) {
60
+ return teamsfx_api_1.err(fetchRes.error);
61
+ }
46
62
  // -> Step: Convert to single Host
47
63
  await OfficeXMLAddinGenerator.childProcessExec(`npm run convert-to-single-host --if-present -- ${lodash_1.default.toLower(host)}`);
48
64
  }
49
65
  else {
50
66
  // [Condition]: Manifest Only
51
67
  // -> Step: Copy proj files for manifest-only project
52
- const getManifestOnlyProjectTemplateRes = await generator_1.Generator.generateTemplate(context, destinationPath, `${TEMPLATE_BASE}-manifest-only`, lang);
68
+ const getManifestOnlyProjectTemplateRes = await generator_1.Generator.generateTemplate(context, destinationPath, `${TEMPLATE_BASE}-manifest-only`, langKey);
53
69
  if (getManifestOnlyProjectTemplateRes.isErr())
54
- return teamsfx_api_1.err(getManifestOnlyProjectTemplateRes.error);
70
+ throw teamsfx_api_1.err(getManifestOnlyProjectTemplateRes.error);
55
71
  }
56
72
  // -> Common Step: Copy the README (or with manifest for manifest-only proj)
57
- const getReadmeTemplateRes = await generator_1.Generator.generateTemplate(context, destinationPath, `${TEMPLATE_BASE}-${templateName}`, lang);
73
+ const getReadmeTemplateRes = await generator_1.Generator.generateTemplate(context, destinationPath, `${TEMPLATE_BASE}-${templateName}`, langKey);
58
74
  if (getReadmeTemplateRes.isErr())
59
- return teamsfx_api_1.err(getReadmeTemplateRes.error);
75
+ throw teamsfx_api_1.err(getReadmeTemplateRes.error);
60
76
  // -> Common Step: Modify the Manifest
61
77
  await office_addin_manifest_1.OfficeAddinManifest.modifyManifestFile(`${path_1.join(destinationPath, "manifest.xml")}`, "random", `${appName}`);
78
+ // -> Common Step: Generate OfficeXMLAddin specific `teamsapp.yml`
79
+ const generateOfficeYMLRes = await generator_1.Generator.generateTemplate(context, destinationPath, TEMPLATE_COMMON_NAME, TEMPLATE_COMMON_LANG);
80
+ if (generateOfficeYMLRes.isErr())
81
+ throw teamsfx_api_1.err(generateOfficeYMLRes.error);
62
82
  process.chdir(workingDir);
63
83
  await progressBar.end(true, true);
64
84
  return teamsfx_api_1.ok(undefined);
@@ -83,7 +103,7 @@ tslib_1.__decorate([
83
103
  }),
84
104
  ]),
85
105
  tslib_1.__metadata("design:type", Function),
86
- tslib_1.__metadata("design:paramtypes", [Object, Object, String]),
106
+ tslib_1.__metadata("design:paramtypes", [Object, Object, String, Object]),
87
107
  tslib_1.__metadata("design:returntype", Promise)
88
108
  ], OfficeXMLAddinGenerator, "generate", null);
89
109
  exports.OfficeXMLAddinGenerator = OfficeXMLAddinGenerator;
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../src/component/generator/officeXMLAddin/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../src/component/generator/officeXMLAddin/generator.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;AAElC;;GAEG;AAEH,+CAA8C;AAC9C,wDAAmF;AACnF,oEAA8C;AAC9C,yDAAkC;AAClC,iEAA4D;AAC5D,+BAA4B;AAC5B,+BAAiC;AACjC,iEAAmE;AACnE,0CAA+C;AAC/C,mEAAgE;AAChE,0EAAsF;AACtF,4CAAyC;AAEzC,mDAA+D;AAC/D,oCAA4C;AAC5C,uCAA4C;AAE5C,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAC1C,MAAM,eAAe,GAAG,UAAU,CAAC;AACnC,MAAM,aAAa,GAAG,kBAAkB,CAAC;AACzC,MAAM,oBAAoB,GAAG,yBAAyB,CAAC;AACvD,MAAM,oBAAoB,GAAG,QAAQ,CAAC;AAQtC;;GAEG;AACH,MAAa,uBAAuB;IASlC,MAAM,CAAC,KAAK,CAAC,QAAQ,CACnB,OAAgB,EAChB,MAAc,EACd,eAAuB,EACvB,aAA6B;QAE7B,MAAM,IAAI,GAAG,MAAM,CAAC,6BAAa,CAAC,eAAe,CAAW,CAAC;QAC7D,MAAM,UAAU,GAAG,MAAM,CAAC,6BAAa,CAAC,YAAY,CAAC,CAAC;QACtD,MAAM,IAAI,GAAG,gBAAC,CAAC,OAAO,CAAC,MAAM,CAAC,6BAAa,CAAC,mBAAmB,CAAC,CAEhD,CAAC;QACjB,MAAM,OAAO,GAAG,wBAAgB,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,OAAO,GAAG,MAAM,CAAC,6BAAa,CAAC,OAAO,CAAW,CAAC;QACxD,MAAM,WAAW,GAAG,MAAM,CAAC,6BAAa,CAAC,WAAW,CAAC,CAAC;QACtD,MAAM,cAAc,GAAG,4CAA4B,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACvE,MAAM,YAAY,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC,aAAa,CAAC;QAC9D,MAAM,WAAW,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1E,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QACjC,MAAM,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC,iBAAiB,CAC3D,kCAAkB,CAAC,qDAAqD,CAAC,EACzE,CAAC,CACF,CAAC;QAEF,cAAK,CAAC,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,cAAc,EAAE;YACnC,oCAAwC,EAAE,IAAI;YAC9C,0CAA2C,EAAE,UAAU;YACvD,oCAAwC,EAAE,IAAI;SAC/C,CAAC,CAAC;QAEH,IAAI;YACF,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YAC/B,MAAM,WAAW,CAAC,KAAK,EAAE,CAAC;YAC1B,MAAM,WAAW,CAAC,IAAI,CACpB,kCAAkB,CAAC,sDAAsD,CAAC,CAC3E,CAAC;YAEF,IAAI,CAAC,CAAC,WAAW,EAAE;gBACjB,iEAAiE;gBAEjE,4CAA4C;gBAC5C,MAAM,QAAQ,GAAG,MAAM,qBAAa,CAClC,4BAA4B,EAC5B,WAAW,EACX,eAAe,CAChB,CAAC;gBACF,IAAI,QAAQ,CAAC,KAAK,EAAE,EAAE;oBACpB,OAAO,iBAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;iBAC5B;gBACD,kCAAkC;gBAClC,MAAM,uBAAuB,CAAC,gBAAgB,CAC5C,kDAAkD,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CACpE,CAAC;aACH;iBAAM;gBACL,6BAA6B;gBAE7B,qDAAqD;gBACrD,MAAM,iCAAiC,GAAG,MAAM,qBAAS,CAAC,gBAAgB,CACxE,OAAO,EACP,eAAe,EACf,GAAG,aAAa,gBAAgB,EAChC,OAAO,CACR,CAAC;gBACF,IAAI,iCAAiC,CAAC,KAAK,EAAE;oBAC3C,MAAM,iBAAG,CAAC,iCAAiC,CAAC,KAAK,CAAC,CAAC;aACtD;YAED,4EAA4E;YAC5E,MAAM,oBAAoB,GAAG,MAAM,qBAAS,CAAC,gBAAgB,CAC3D,OAAO,EACP,eAAe,EACf,GAAG,aAAa,IAAI,YAAY,EAAE,EAClC,OAAO,CACR,CAAC;YACF,IAAI,oBAAoB,CAAC,KAAK,EAAE;gBAAE,MAAM,iBAAG,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAExE,sCAAsC;YACtC,MAAM,2CAAmB,CAAC,kBAAkB,CAC1C,GAAG,WAAI,CAAC,eAAe,EAAE,cAAc,CAAC,EAAE,EAC1C,QAAQ,EACR,GAAG,OAAO,EAAE,CACb,CAAC;YAEF,kEAAkE;YAClE,MAAM,oBAAoB,GAAG,MAAM,qBAAS,CAAC,gBAAgB,CAC3D,OAAO,EACP,eAAe,EACf,oBAAoB,EACpB,oBAAoB,CACrB,CAAC;YACF,IAAI,oBAAoB,CAAC,KAAK,EAAE;gBAAE,MAAM,iBAAG,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAExE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAClC,OAAO,gBAAE,CAAC,SAAS,CAAC,CAAC;SACtB;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACnC,OAAO,iBAAG,CAAC,qBAAa,CAAC,CAAU,CAAC,CAAC,CAAC;SACvC;IACH,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAe;QAIlD,OAAO,gBAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;CACF;AA3GC;IARC,WAAK,CAAC;QACL,qCAAiB,CAAC;YAChB,eAAe,EAAE,IAAI;YACrB,sBAAsB,EAAE,cAAc;YACtC,kBAAkB,EAAE,eAAe;YACnC,WAAW,EAAE,cAAc;SAC5B,CAAC;KACH,CAAC;;;;6CAoGD;AA5GH,0DAoHC"}
@@ -1,36 +1,24 @@
1
1
  /**
2
- * Get all available Office XML Addin Project Options of one host
3
- * @param host Office host
4
- * @returns the detail proj options[] of the host
2
+ * @author zyun@microsoft.com
5
3
  */
6
- export declare function getOfficeXMLAddinHostProjectOptions(host: string): {
7
- proj: string;
8
- title: string;
9
- detail: string;
10
- }[];
11
- /**
12
- * Get all available Lang Options of one host and proj
13
- * @param host Office host
14
- * @param proj proj name
15
- * @returns the detail lang options[] of the proj
16
- */
17
- export declare function getOfficeXMLAddinHostProjectLangOptions(host: string, proj: string): {
18
- id: string;
19
- label: string;
20
- }[];
21
- /**
22
- * Get all available Lang Options of one host and proj
23
- * @param host Office host
24
- * @param proj proj name
25
- * @returns the detail lang options[] of the proj
26
- */
27
- export declare function getOfficeXMLAddinHostProjectTemplateName(host: string, proj: string): string;
28
- /**
29
- * Get the Repo Info of the proj
30
- * @param host wxp
31
- * @param proj proj name
32
- * @param lang ts or js
33
- * @returns Repo Info
34
- */
35
- export declare function getOfficeXMLAddinHostProjectRepoInfo(host: string, proj: string, lang: "ts" | "js"): string;
4
+ interface IOfficeAddinHostConfig {
5
+ [property: string]: {
6
+ title: string;
7
+ detail: string;
8
+ localTemplate: string;
9
+ manifestPath?: string;
10
+ framework: {
11
+ [property: string]: {
12
+ typescript?: string;
13
+ javascript?: string;
14
+ };
15
+ };
16
+ };
17
+ }
18
+ interface IOfficeAddinProjectConfig {
19
+ [property: string]: IOfficeAddinHostConfig;
20
+ }
21
+ export declare const OfficeAddinProjectConfig: IOfficeAddinProjectConfig;
22
+ export declare function getOfficeAddinTemplateConfig(projectType: string, addinHost?: string): IOfficeAddinHostConfig;
23
+ export {};
36
24
  //# sourceMappingURL=projectConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"projectConfig.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/officeXMLAddin/projectConfig.ts"],"names":[],"mappings":"AA0IA;;;;GAIG;AACH,wBAAgB,mCAAmC,CAAC,IAAI,EAAE,MAAM,GAAG;IACjE,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,EAAE,CAUF;AAED;;;;;GAKG;AACH,wBAAgB,uCAAuC,CACrD,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX;IACD,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf,EAAE,CAUF;AAED;;;;;GAKG;AACH,wBAAgB,wCAAwC,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3F;AAED;;;;;;GAMG;AACH,wBAAgB,oCAAoC,CAClD,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,IAAI,GAAG,IAAI,GAChB,MAAM,CAGR"}
1
+ {"version":3,"file":"projectConfig.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/officeXMLAddin/projectConfig.ts"],"names":[],"mappings":"AAKA;;GAEG;AAEH,UAAU,sBAAsB;IAC9B,CAAC,QAAQ,EAAE,MAAM,GAAG;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE;YACT,CAAC,QAAQ,EAAE,MAAM,GAAG;gBAClB,UAAU,CAAC,EAAE,MAAM,CAAC;gBACpB,UAAU,CAAC,EAAE,MAAM,CAAC;aACrB,CAAC;SACH,CAAC;KACH,CAAC;CACH;AAED,UAAU,yBAAyB;IACjC,CAAC,QAAQ,EAAE,MAAM,GAAG,sBAAsB,CAAC;CAC5C;AAsCD,eAAO,MAAM,wBAAwB,EAAE,yBA0HtC,CAAC;AAEF,wBAAgB,4BAA4B,CAC1C,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,GACjB,sBAAsB,CASxB"}