@autorest/typescript 6.0.0-beta.7 → 6.0.0-rc.1

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 (437) hide show
  1. package/README.md +42 -5
  2. package/dist/{src/generators/static/README.md.hbs → hlcREADME.md.hbs} +41 -5
  3. package/dist/hlcSamples.ts.hbs +49 -0
  4. package/dist/karma.conf.js.hbs +126 -0
  5. package/dist/paginateHelper.ts.hbs +208 -0
  6. package/dist/pollingHelper.ts.hbs +72 -0
  7. package/dist/rlcEnv.ts.hbs +3 -0
  8. package/dist/rlcREADME.md.hbs +71 -0
  9. package/dist/rlcRecordedClient.ts.hbs +26 -0
  10. package/dist/rlcSampleTest.spec.ts.hbs +20 -0
  11. package/dist/rlcSamples.ts.hbs +28 -0
  12. package/dist/sampleEnv.hbs +4 -0
  13. package/dist/sampleTest.ts.hbs +32 -0
  14. package/dist/samples.ts.hbs +0 -0
  15. package/dist/src/autorestSession.d.ts +18 -6
  16. package/dist/src/autorestSession.d.ts.map +1 -1
  17. package/dist/src/autorestSession.js +3 -9
  18. package/dist/src/autorestSession.js.map +1 -1
  19. package/dist/src/conflictResolver.d.ts +3 -0
  20. package/dist/src/conflictResolver.d.ts.map +1 -0
  21. package/dist/src/conflictResolver.js +43 -0
  22. package/dist/src/conflictResolver.js.map +1 -0
  23. package/dist/src/generators/LROGenerator.d.ts.map +1 -1
  24. package/dist/src/generators/LROGenerator.js +5 -13
  25. package/dist/src/generators/LROGenerator.js.map +1 -1
  26. package/dist/src/generators/clientFileGenerator.d.ts.map +1 -1
  27. package/dist/src/generators/clientFileGenerator.js +303 -61
  28. package/dist/src/generators/clientFileGenerator.js.map +1 -1
  29. package/dist/src/generators/indexGenerator.d.ts +1 -1
  30. package/dist/src/generators/indexGenerator.d.ts.map +1 -1
  31. package/dist/src/generators/indexGenerator.js +143 -11
  32. package/dist/src/generators/indexGenerator.js.map +1 -1
  33. package/dist/src/generators/mappersGenerator.d.ts.map +1 -1
  34. package/dist/src/generators/mappersGenerator.js +93 -19
  35. package/dist/src/generators/mappersGenerator.js.map +1 -1
  36. package/dist/src/generators/modelsGenerator.d.ts.map +1 -1
  37. package/dist/src/generators/modelsGenerator.js +81 -82
  38. package/dist/src/generators/modelsGenerator.js.map +1 -1
  39. package/dist/src/generators/operationGenerator.d.ts.map +1 -1
  40. package/dist/src/generators/operationGenerator.js +92 -125
  41. package/dist/src/generators/operationGenerator.js.map +1 -1
  42. package/dist/src/generators/operationInterfaceGenerator.js +20 -20
  43. package/dist/src/generators/operationInterfaceGenerator.js.map +1 -1
  44. package/dist/src/generators/parametersGenerator.d.ts.map +1 -1
  45. package/dist/src/generators/parametersGenerator.js +7 -8
  46. package/dist/src/generators/parametersGenerator.js.map +1 -1
  47. package/dist/src/generators/samples/hlcSampleGenerator.d.ts +13 -0
  48. package/dist/src/generators/samples/hlcSampleGenerator.d.ts.map +1 -0
  49. package/dist/src/generators/samples/hlcSampleGenerator.js +43 -0
  50. package/dist/src/generators/samples/hlcSampleGenerator.js.map +1 -0
  51. package/dist/src/generators/samples/hlcSamples.ts.hbs +49 -0
  52. package/dist/src/generators/samples/rlcSampleGenerator.d.ts +4 -0
  53. package/dist/src/generators/samples/rlcSampleGenerator.d.ts.map +1 -0
  54. package/dist/src/generators/samples/rlcSampleGenerator.js +64 -0
  55. package/dist/src/generators/samples/rlcSampleGenerator.js.map +1 -0
  56. package/dist/src/generators/samples/rlcSamples.ts.hbs +28 -0
  57. package/dist/src/generators/samples/sampleEnv.hbs +4 -0
  58. package/dist/src/generators/samples/sampleEnvGenerator.d.ts +3 -0
  59. package/dist/src/generators/samples/sampleEnvGenerator.d.ts.map +1 -0
  60. package/dist/src/generators/samples/sampleEnvGenerator.js +17 -0
  61. package/dist/src/generators/samples/sampleEnvGenerator.js.map +1 -0
  62. package/dist/src/generators/static/apiExtractorConfig.js +3 -3
  63. package/dist/src/generators/static/apiExtractorConfig.js.map +1 -1
  64. package/dist/src/generators/static/esLintConfigGenerator.d.ts +3 -0
  65. package/dist/src/generators/static/esLintConfigGenerator.d.ts.map +1 -0
  66. package/dist/src/generators/static/esLintConfigGenerator.js +26 -0
  67. package/dist/src/generators/static/esLintConfigGenerator.js.map +1 -0
  68. package/{src/generators/static/README.md.hbs → dist/src/generators/static/hlcREADME.md.hbs} +41 -5
  69. package/dist/src/generators/static/karma.conf.js.hbs +126 -0
  70. package/dist/src/generators/static/karmaConfigFileGenerator.d.ts +3 -0
  71. package/dist/src/generators/static/karmaConfigFileGenerator.d.ts.map +1 -0
  72. package/dist/src/generators/static/karmaConfigFileGenerator.js +23 -0
  73. package/dist/src/generators/static/karmaConfigFileGenerator.js.map +1 -0
  74. package/dist/src/generators/static/licenseFileGenerator.js +1 -1
  75. package/dist/src/generators/static/licenseFileGenerator.js.map +1 -1
  76. package/dist/src/generators/static/packageFileGenerator.d.ts.map +1 -1
  77. package/dist/src/generators/static/packageFileGenerator.js +267 -79
  78. package/dist/src/generators/static/packageFileGenerator.js.map +1 -1
  79. package/dist/src/generators/static/readmeFileGenerator.d.ts +2 -2
  80. package/dist/src/generators/static/readmeFileGenerator.d.ts.map +1 -1
  81. package/dist/src/generators/static/readmeFileGenerator.js +54 -26
  82. package/dist/src/generators/static/readmeFileGenerator.js.map +1 -1
  83. package/dist/src/generators/static/rlcREADME.md.hbs +71 -0
  84. package/dist/src/generators/static/rollupConfigFileGenerator.d.ts.map +1 -1
  85. package/dist/src/generators/static/rollupConfigFileGenerator.js +12 -71
  86. package/dist/src/generators/static/rollupConfigFileGenerator.js.map +1 -1
  87. package/dist/src/generators/static/tsConfigFileGenerator.d.ts.map +1 -1
  88. package/dist/src/generators/static/tsConfigFileGenerator.js +47 -20
  89. package/dist/src/generators/static/tsConfigFileGenerator.js.map +1 -1
  90. package/dist/src/generators/test/envBrowserFileGenerator.d.ts +3 -0
  91. package/dist/src/generators/test/envBrowserFileGenerator.d.ts.map +1 -0
  92. package/dist/src/generators/test/envBrowserFileGenerator.js +15 -0
  93. package/dist/src/generators/test/envBrowserFileGenerator.js.map +1 -0
  94. package/dist/src/generators/test/envFileGenerator.d.ts +3 -0
  95. package/dist/src/generators/test/envFileGenerator.d.ts.map +1 -0
  96. package/dist/src/generators/test/envFileGenerator.js +23 -0
  97. package/dist/src/generators/test/envFileGenerator.js.map +1 -0
  98. package/dist/src/generators/test/recordedClientFileGenerator.d.ts +3 -0
  99. package/dist/src/generators/test/recordedClientFileGenerator.d.ts.map +1 -0
  100. package/dist/src/generators/test/recordedClientFileGenerator.js +23 -0
  101. package/dist/src/generators/test/recordedClientFileGenerator.js.map +1 -0
  102. package/dist/src/generators/test/rlcEnv.ts.hbs +3 -0
  103. package/dist/src/generators/test/rlcRecordedClient.ts.hbs +26 -0
  104. package/dist/src/generators/test/rlcSampleTest.spec.ts.hbs +20 -0
  105. package/dist/src/generators/test/sampleTest.ts.hbs +32 -0
  106. package/dist/src/generators/test/sampleTestGenerator.d.ts +3 -0
  107. package/dist/src/generators/test/sampleTestGenerator.d.ts.map +1 -0
  108. package/dist/src/generators/test/sampleTestGenerator.js +34 -0
  109. package/dist/src/generators/test/sampleTestGenerator.js.map +1 -0
  110. package/dist/src/generators/tracingFileGenerator.d.ts.map +1 -1
  111. package/dist/src/generators/tracingFileGenerator.js +7 -21
  112. package/dist/src/generators/tracingFileGenerator.js.map +1 -1
  113. package/dist/src/generators/utils/docsUtils.js +2 -2
  114. package/dist/src/generators/utils/docsUtils.js.map +1 -1
  115. package/dist/src/generators/utils/operationsUtils.js +1 -1
  116. package/dist/src/generators/utils/operationsUtils.js.map +1 -1
  117. package/dist/src/generators/utils/pagingOperations.d.ts +5 -0
  118. package/dist/src/generators/utils/pagingOperations.d.ts.map +1 -1
  119. package/dist/src/generators/utils/pagingOperations.js +15 -15
  120. package/dist/src/generators/utils/pagingOperations.js.map +1 -1
  121. package/dist/src/generators/utils/parameterUtils.js +9 -9
  122. package/dist/src/generators/utils/parameterUtils.js.map +1 -1
  123. package/dist/src/generators/utils/responseTypeUtils.js +2 -2
  124. package/dist/src/generators/utils/responseTypeUtils.js.map +1 -1
  125. package/dist/src/generators/utils/tracingUtils.d.ts.map +1 -1
  126. package/dist/src/generators/utils/tracingUtils.js +2 -6
  127. package/dist/src/generators/utils/tracingUtils.js.map +1 -1
  128. package/dist/src/lroImpl.d.ts +16 -0
  129. package/dist/src/lroImpl.d.ts.map +1 -0
  130. package/dist/src/lroImpl.js +45 -0
  131. package/dist/src/lroImpl.js.map +1 -0
  132. package/dist/src/main.d.ts +2 -2
  133. package/dist/src/main.d.ts.map +1 -1
  134. package/dist/src/main.js +8 -8
  135. package/dist/src/main.js.map +1 -1
  136. package/dist/src/models/clientDetails.d.ts +10 -1
  137. package/dist/src/models/clientDetails.d.ts.map +1 -1
  138. package/dist/src/models/modelDetails.d.ts +2 -2
  139. package/dist/src/models/modelDetails.d.ts.map +1 -1
  140. package/dist/src/models/operationDetails.d.ts +1 -0
  141. package/dist/src/models/operationDetails.d.ts.map +1 -1
  142. package/dist/src/models/sampleDetails.d.ts +22 -0
  143. package/dist/src/models/sampleDetails.d.ts.map +1 -0
  144. package/dist/src/models/sampleDetails.js +3 -0
  145. package/dist/src/models/sampleDetails.js.map +1 -0
  146. package/dist/src/restLevelClient/generateClient.d.ts +1 -1
  147. package/dist/src/restLevelClient/generateClient.d.ts.map +1 -1
  148. package/dist/src/restLevelClient/generateClient.js +108 -167
  149. package/dist/src/restLevelClient/generateClient.js.map +1 -1
  150. package/dist/src/restLevelClient/generateClientDefinition.d.ts +6 -0
  151. package/dist/src/restLevelClient/generateClientDefinition.d.ts.map +1 -0
  152. package/dist/src/restLevelClient/generateClientDefinition.js +261 -0
  153. package/dist/src/restLevelClient/generateClientDefinition.js.map +1 -0
  154. package/dist/src/restLevelClient/generateIsUnexpectedHelper.d.ts +8 -0
  155. package/dist/src/restLevelClient/generateIsUnexpectedHelper.d.ts.map +1 -0
  156. package/dist/src/restLevelClient/generateIsUnexpectedHelper.js +204 -0
  157. package/dist/src/restLevelClient/generateIsUnexpectedHelper.js.map +1 -0
  158. package/dist/src/restLevelClient/generateMethodShortcuts.d.ts +8 -0
  159. package/dist/src/restLevelClient/generateMethodShortcuts.d.ts.map +1 -0
  160. package/dist/src/restLevelClient/generateMethodShortcuts.js +70 -0
  161. package/dist/src/restLevelClient/generateMethodShortcuts.js.map +1 -0
  162. package/dist/src/restLevelClient/generateObjectTypes.d.ts +3 -3
  163. package/dist/src/restLevelClient/generateObjectTypes.d.ts.map +1 -1
  164. package/dist/src/restLevelClient/generateObjectTypes.js +43 -31
  165. package/dist/src/restLevelClient/generateObjectTypes.js.map +1 -1
  166. package/dist/src/restLevelClient/generatePagingHelper.d.ts +3 -0
  167. package/dist/src/restLevelClient/generatePagingHelper.d.ts.map +1 -0
  168. package/dist/src/restLevelClient/generatePagingHelper.js +54 -0
  169. package/dist/src/restLevelClient/generatePagingHelper.js.map +1 -0
  170. package/dist/src/restLevelClient/generateParameterTypes.d.ts.map +1 -1
  171. package/dist/src/restLevelClient/generateParameterTypes.js +247 -43
  172. package/dist/src/restLevelClient/generateParameterTypes.js.map +1 -1
  173. package/dist/src/restLevelClient/generatePollingHelper.d.ts +3 -0
  174. package/dist/src/restLevelClient/generatePollingHelper.d.ts.map +1 -0
  175. package/dist/src/restLevelClient/generatePollingHelper.js +20 -0
  176. package/dist/src/restLevelClient/generatePollingHelper.js.map +1 -0
  177. package/dist/src/restLevelClient/generateResponseTypes.d.ts.map +1 -1
  178. package/dist/src/restLevelClient/generateResponseTypes.js +45 -29
  179. package/dist/src/restLevelClient/generateResponseTypes.js.map +1 -1
  180. package/dist/src/restLevelClient/generateRestLevel.d.ts.map +1 -1
  181. package/dist/src/restLevelClient/generateRestLevel.js +64 -15
  182. package/dist/src/restLevelClient/generateRestLevel.js.map +1 -1
  183. package/dist/src/restLevelClient/generateSchemaTypes.d.ts.map +1 -1
  184. package/dist/src/restLevelClient/generateSchemaTypes.js +29 -7
  185. package/dist/src/restLevelClient/generateSchemaTypes.js.map +1 -1
  186. package/dist/src/restLevelClient/generateTopLevelIndexFile.d.ts +4 -0
  187. package/dist/src/restLevelClient/generateTopLevelIndexFile.d.ts.map +1 -0
  188. package/dist/src/restLevelClient/generateTopLevelIndexFile.js +37 -0
  189. package/dist/src/restLevelClient/generateTopLevelIndexFile.js.map +1 -0
  190. package/dist/src/restLevelClient/getPropertySignature.d.ts +3 -2
  191. package/dist/src/restLevelClient/getPropertySignature.d.ts.map +1 -1
  192. package/dist/src/restLevelClient/getPropertySignature.js +23 -7
  193. package/dist/src/restLevelClient/getPropertySignature.js.map +1 -1
  194. package/dist/src/restLevelClient/helpers/hasPollingOperations.d.ts +4 -0
  195. package/dist/src/restLevelClient/helpers/hasPollingOperations.d.ts.map +1 -0
  196. package/dist/src/restLevelClient/helpers/hasPollingOperations.js +12 -0
  197. package/dist/src/restLevelClient/helpers/hasPollingOperations.js.map +1 -0
  198. package/dist/src/restLevelClient/helpers/modelHelpers.d.ts +4 -0
  199. package/dist/src/restLevelClient/helpers/modelHelpers.d.ts.map +1 -0
  200. package/dist/src/restLevelClient/helpers/modelHelpers.js +19 -0
  201. package/dist/src/restLevelClient/helpers/modelHelpers.js.map +1 -0
  202. package/dist/src/restLevelClient/helpers/operationHelpers.d.ts +10 -0
  203. package/dist/src/restLevelClient/helpers/operationHelpers.d.ts.map +1 -0
  204. package/dist/src/restLevelClient/helpers/operationHelpers.js +64 -0
  205. package/dist/src/restLevelClient/helpers/operationHelpers.js.map +1 -0
  206. package/dist/src/restLevelClient/interfaces.d.ts +33 -0
  207. package/dist/src/restLevelClient/interfaces.d.ts.map +1 -0
  208. package/dist/src/restLevelClient/interfaces.js +3 -0
  209. package/dist/src/restLevelClient/interfaces.js.map +1 -0
  210. package/dist/src/restLevelClient/mutateCodeModel.js +2 -2
  211. package/dist/src/restLevelClient/mutateCodeModel.js.map +1 -1
  212. package/dist/src/restLevelClient/operationHelpers.d.ts +4 -0
  213. package/dist/src/restLevelClient/operationHelpers.d.ts.map +1 -1
  214. package/dist/src/restLevelClient/operationHelpers.js +21 -10
  215. package/dist/src/restLevelClient/operationHelpers.js.map +1 -1
  216. package/dist/src/restLevelClient/paginateHelper.ts.hbs +208 -0
  217. package/dist/src/restLevelClient/pollingHelper.ts.hbs +72 -0
  218. package/dist/src/restLevelClient/samples/generateSamples.d.ts +23 -0
  219. package/dist/src/restLevelClient/samples/generateSamples.d.ts.map +1 -0
  220. package/dist/src/restLevelClient/samples/generateSamples.js +3 -0
  221. package/dist/src/restLevelClient/samples/generateSamples.js.map +1 -0
  222. package/dist/src/restLevelClient/samples/samples.ts.hbs +0 -0
  223. package/dist/src/restLevelClient/schemaHelpers.d.ts +12 -2
  224. package/dist/src/restLevelClient/schemaHelpers.d.ts.map +1 -1
  225. package/dist/src/restLevelClient/schemaHelpers.js +48 -14
  226. package/dist/src/restLevelClient/schemaHelpers.js.map +1 -1
  227. package/dist/src/transforms/extensions.js +10 -10
  228. package/dist/src/transforms/extensions.js.map +1 -1
  229. package/dist/src/transforms/groupTransforms.js +2 -2
  230. package/dist/src/transforms/groupTransforms.js.map +1 -1
  231. package/dist/src/transforms/mapperTransforms.d.ts +1 -1
  232. package/dist/src/transforms/mapperTransforms.d.ts.map +1 -1
  233. package/dist/src/transforms/mapperTransforms.js +30 -27
  234. package/dist/src/transforms/mapperTransforms.js.map +1 -1
  235. package/dist/src/transforms/objectTransforms.d.ts.map +1 -1
  236. package/dist/src/transforms/objectTransforms.js +42 -26
  237. package/dist/src/transforms/objectTransforms.js.map +1 -1
  238. package/dist/src/transforms/operationTransforms.d.ts.map +1 -1
  239. package/dist/src/transforms/operationTransforms.js +29 -26
  240. package/dist/src/transforms/operationTransforms.js.map +1 -1
  241. package/dist/src/transforms/optionsTransforms.js +1 -1
  242. package/dist/src/transforms/optionsTransforms.js.map +1 -1
  243. package/dist/src/transforms/parameterTransforms.d.ts.map +1 -1
  244. package/dist/src/transforms/parameterTransforms.js +43 -27
  245. package/dist/src/transforms/parameterTransforms.js.map +1 -1
  246. package/dist/src/transforms/samplesTransforms.d.ts +7 -0
  247. package/dist/src/transforms/samplesTransforms.d.ts.map +1 -0
  248. package/dist/src/transforms/samplesTransforms.js +293 -0
  249. package/dist/src/transforms/samplesTransforms.js.map +1 -0
  250. package/dist/src/transforms/transforms.d.ts +1 -2
  251. package/dist/src/transforms/transforms.d.ts.map +1 -1
  252. package/dist/src/transforms/transforms.js +26 -24
  253. package/dist/src/transforms/transforms.js.map +1 -1
  254. package/dist/src/transforms/urlTransforms.js +3 -3
  255. package/dist/src/transforms/urlTransforms.js.map +1 -1
  256. package/dist/src/typescriptGenerator.d.ts +2 -2
  257. package/dist/src/typescriptGenerator.d.ts.map +1 -1
  258. package/dist/src/typescriptGenerator.js +46 -40
  259. package/dist/src/typescriptGenerator.js.map +1 -1
  260. package/dist/src/utils/autorestOptions.d.ts +2 -2
  261. package/dist/src/utils/autorestOptions.d.ts.map +1 -1
  262. package/dist/src/utils/autorestOptions.js +148 -61
  263. package/dist/src/utils/autorestOptions.js.map +1 -1
  264. package/dist/src/utils/cloneOperation.js +2 -2
  265. package/dist/src/utils/cloneOperation.js.map +1 -1
  266. package/dist/src/utils/copyFiles.d.ts +2 -0
  267. package/dist/src/utils/copyFiles.d.ts.map +1 -0
  268. package/dist/src/utils/copyFiles.js +33 -0
  269. package/dist/src/utils/copyFiles.js.map +1 -0
  270. package/dist/src/utils/extractHeaders.js +4 -4
  271. package/dist/src/utils/extractHeaders.js.map +1 -1
  272. package/dist/src/utils/extractPaginationDetails.d.ts +5 -1
  273. package/dist/src/utils/extractPaginationDetails.d.ts.map +1 -1
  274. package/dist/src/utils/extractPaginationDetails.js +23 -10
  275. package/dist/src/utils/extractPaginationDetails.js.map +1 -1
  276. package/dist/src/utils/headersToSchema.js +1 -1
  277. package/dist/src/utils/headersToSchema.js.map +1 -1
  278. package/dist/src/utils/logger.js +1 -1
  279. package/dist/src/utils/logger.js.map +1 -1
  280. package/dist/src/utils/nameUtils.d.ts +6 -2
  281. package/dist/src/utils/nameUtils.d.ts.map +1 -1
  282. package/dist/src/utils/nameUtils.js +13 -8
  283. package/dist/src/utils/nameUtils.js.map +1 -1
  284. package/dist/src/utils/schemaHelpers.d.ts +6 -1
  285. package/dist/src/utils/schemaHelpers.d.ts.map +1 -1
  286. package/dist/src/utils/schemaHelpers.js +50 -7
  287. package/dist/src/utils/schemaHelpers.js.map +1 -1
  288. package/dist/src/utils/sortObjectSchemasHierarchically.js +1 -1
  289. package/dist/src/utils/sortObjectSchemasHierarchically.js.map +1 -1
  290. package/dist/src/utils/valueHelpers.d.ts.map +1 -1
  291. package/dist/src/utils/valueHelpers.js +2 -1
  292. package/dist/src/utils/valueHelpers.js.map +1 -1
  293. package/package.json +59 -39
  294. package/src/autorestSession.ts +26 -18
  295. package/src/conflictResolver.ts +61 -0
  296. package/src/generators/LROGenerator.ts +2 -16
  297. package/src/generators/clientFileGenerator.ts +400 -50
  298. package/src/generators/indexGenerator.ts +166 -14
  299. package/src/generators/mappersGenerator.ts +108 -8
  300. package/src/generators/modelsGenerator.ts +101 -98
  301. package/src/generators/operationGenerator.ts +63 -122
  302. package/src/generators/parametersGenerator.ts +2 -3
  303. package/src/generators/samples/hlcSampleGenerator.ts +50 -0
  304. package/src/generators/samples/hlcSamples.ts.hbs +49 -0
  305. package/src/generators/samples/rlcSampleGenerator.ts +72 -0
  306. package/src/generators/samples/rlcSamples.ts.hbs +28 -0
  307. package/src/generators/samples/sampleEnv.hbs +4 -0
  308. package/src/generators/samples/sampleEnvGenerator.ts +14 -0
  309. package/src/generators/static/apiExtractorConfig.ts +3 -3
  310. package/src/generators/static/esLintConfigGenerator.ts +24 -0
  311. package/src/generators/static/hlcREADME.md.hbs +144 -0
  312. package/src/generators/static/karma.conf.js.hbs +126 -0
  313. package/src/generators/static/karmaConfigFileGenerator.ts +20 -0
  314. package/src/generators/static/packageFileGenerator.ts +305 -82
  315. package/src/generators/static/readmeFileGenerator.ts +85 -42
  316. package/src/generators/static/rlcREADME.md.hbs +71 -0
  317. package/src/generators/static/rollupConfigFileGenerator.ts +13 -71
  318. package/src/generators/static/tsConfigFileGenerator.ts +55 -21
  319. package/src/generators/test/envBrowserFileGenerator.ts +14 -0
  320. package/src/generators/test/envFileGenerator.ts +22 -0
  321. package/src/generators/test/recordedClientFileGenerator.ts +22 -0
  322. package/src/generators/test/rlcEnv.ts.hbs +3 -0
  323. package/src/generators/test/rlcRecordedClient.ts.hbs +26 -0
  324. package/src/generators/test/rlcSampleTest.spec.ts.hbs +20 -0
  325. package/src/generators/test/sampleTest.ts.hbs +32 -0
  326. package/src/generators/test/sampleTestGenerator.ts +32 -0
  327. package/src/generators/tracingFileGenerator.ts +6 -24
  328. package/src/generators/utils/pagingOperations.ts +1 -2
  329. package/src/generators/utils/tracingUtils.ts +1 -5
  330. package/src/lroImpl.ts +26 -0
  331. package/src/main.ts +8 -5
  332. package/src/models/clientDetails.ts +11 -1
  333. package/src/models/modelDetails.ts +2 -2
  334. package/src/models/operationDetails.ts +1 -0
  335. package/src/models/sampleDetails.ts +22 -0
  336. package/src/restLevelClient/generateClient.ts +134 -244
  337. package/src/restLevelClient/generateClientDefinition.ts +386 -0
  338. package/src/restLevelClient/generateIsUnexpectedHelper.ts +224 -0
  339. package/src/restLevelClient/generateMethodShortcuts.ts +121 -0
  340. package/src/restLevelClient/generateObjectTypes.ts +62 -21
  341. package/src/restLevelClient/generatePagingHelper.ts +69 -0
  342. package/src/restLevelClient/generateParameterTypes.ts +377 -55
  343. package/src/restLevelClient/generatePollingHelper.ts +19 -0
  344. package/src/restLevelClient/generateResponseTypes.ts +53 -22
  345. package/src/restLevelClient/generateRestLevel.ts +65 -8
  346. package/src/restLevelClient/generateSchemaTypes.ts +43 -8
  347. package/src/restLevelClient/generateTopLevelIndexFile.ts +37 -0
  348. package/src/restLevelClient/getPropertySignature.ts +31 -6
  349. package/src/restLevelClient/helpers/hasPollingOperations.ts +15 -0
  350. package/src/restLevelClient/helpers/modelHelpers.ts +15 -0
  351. package/src/restLevelClient/helpers/operationHelpers.ts +93 -0
  352. package/src/restLevelClient/interfaces.ts +39 -0
  353. package/src/restLevelClient/operationHelpers.ts +23 -9
  354. package/src/restLevelClient/paginateHelper.ts.hbs +208 -0
  355. package/src/restLevelClient/pollingHelper.ts.hbs +72 -0
  356. package/src/restLevelClient/samples/generateSamples.ts +23 -0
  357. package/src/restLevelClient/samples/samples.ts.hbs +0 -0
  358. package/src/restLevelClient/schemaHelpers.ts +51 -9
  359. package/src/transforms/mapperTransforms.ts +12 -6
  360. package/src/transforms/objectTransforms.ts +26 -6
  361. package/src/transforms/operationTransforms.ts +6 -1
  362. package/src/transforms/parameterTransforms.ts +26 -7
  363. package/src/transforms/samplesTransforms.ts +349 -0
  364. package/src/transforms/transforms.ts +14 -9
  365. package/src/typescriptGenerator.ts +41 -45
  366. package/src/utils/autorestOptions.ts +203 -86
  367. package/src/utils/copyFiles.ts +36 -0
  368. package/src/utils/extractPaginationDetails.ts +19 -1
  369. package/src/utils/nameUtils.ts +18 -9
  370. package/src/utils/schemaHelpers.ts +51 -4
  371. package/src/utils/valueHelpers.ts +1 -0
  372. package/CHANGELOG.md +0 -44
  373. package/dist/src/coreClientLro.d.ts +0 -26
  374. package/dist/src/coreClientLro.d.ts.map +0 -1
  375. package/dist/src/coreClientLro.js +0 -207
  376. package/dist/src/coreClientLro.js.map +0 -1
  377. package/dist/src/coreHttpLro.d.ts +0 -26
  378. package/dist/src/coreHttpLro.d.ts.map +0 -1
  379. package/dist/src/coreHttpLro.js +0 -186
  380. package/dist/src/coreHttpLro.js.map +0 -1
  381. package/dist/src/generators/clientContextFileGenerator.d.ts +0 -5
  382. package/dist/src/generators/clientContextFileGenerator.d.ts.map +0 -1
  383. package/dist/src/generators/clientContextFileGenerator.js +0 -263
  384. package/dist/src/generators/clientContextFileGenerator.js.map +0 -1
  385. package/dist/src/lro/azureAsyncPolling.d.ts +0 -3
  386. package/dist/src/lro/azureAsyncPolling.d.ts.map +0 -1
  387. package/dist/src/lro/azureAsyncPolling.js +0 -71
  388. package/dist/src/lro/azureAsyncPolling.js.map +0 -1
  389. package/dist/src/lro/bodyPolling.d.ts +0 -8
  390. package/dist/src/lro/bodyPolling.d.ts.map +0 -1
  391. package/dist/src/lro/bodyPolling.js +0 -34
  392. package/dist/src/lro/bodyPolling.js.map +0 -1
  393. package/dist/src/lro/index.d.ts +0 -4
  394. package/dist/src/lro/index.d.ts.map +0 -1
  395. package/dist/src/lro/index.js +0 -10
  396. package/dist/src/lro/index.js.map +0 -1
  397. package/dist/src/lro/locationPolling.d.ts +0 -3
  398. package/dist/src/lro/locationPolling.d.ts.map +0 -1
  399. package/dist/src/lro/locationPolling.js +0 -18
  400. package/dist/src/lro/locationPolling.js.map +0 -1
  401. package/dist/src/lro/lroEngine.d.ts +0 -14
  402. package/dist/src/lro/lroEngine.d.ts.map +0 -1
  403. package/dist/src/lro/lroEngine.js +0 -38
  404. package/dist/src/lro/lroEngine.js.map +0 -1
  405. package/dist/src/lro/models.d.ts +0 -138
  406. package/dist/src/lro/models.d.ts.map +0 -1
  407. package/dist/src/lro/models.js +0 -12
  408. package/dist/src/lro/models.js.map +0 -1
  409. package/dist/src/lro/operation.d.ts +0 -36
  410. package/dist/src/lro/operation.d.ts.map +0 -1
  411. package/dist/src/lro/operation.js +0 -89
  412. package/dist/src/lro/operation.js.map +0 -1
  413. package/dist/src/lro/passthrough.d.ts +0 -3
  414. package/dist/src/lro/passthrough.d.ts.map +0 -1
  415. package/dist/src/lro/passthrough.js +0 -14
  416. package/dist/src/lro/passthrough.js.map +0 -1
  417. package/dist/src/lro/requestUtils.d.ts +0 -16
  418. package/dist/src/lro/requestUtils.d.ts.map +0 -1
  419. package/dist/src/lro/requestUtils.js +0 -76
  420. package/dist/src/lro/requestUtils.js.map +0 -1
  421. package/dist/src/lro/stateMachine.d.ts +0 -18
  422. package/dist/src/lro/stateMachine.d.ts.map +0 -1
  423. package/dist/src/lro/stateMachine.js +0 -90
  424. package/dist/src/lro/stateMachine.js.map +0 -1
  425. package/src/coreClientLro.ts +0 -315
  426. package/src/coreHttpLro.ts +0 -268
  427. package/src/generators/clientContextFileGenerator.ts +0 -405
  428. package/src/lro/azureAsyncPolling.ts +0 -82
  429. package/src/lro/bodyPolling.ts +0 -34
  430. package/src/lro/index.ts +0 -18
  431. package/src/lro/locationPolling.ts +0 -20
  432. package/src/lro/lroEngine.ts +0 -53
  433. package/src/lro/models.ts +0 -165
  434. package/src/lro/operation.ts +0 -112
  435. package/src/lro/passthrough.ts +0 -15
  436. package/src/lro/requestUtils.ts +0 -94
  437. package/src/lro/stateMachine.ts +0 -108
@@ -0,0 +1,71 @@
1
+ # {{ clientDescriptiveName }} library for JavaScript
2
+
3
+ {{ description }}
4
+
5
+ **Please rely heavily on {{#if serviceDocURL}}[the service's documentation]({{ serviceDocURL }}) and {{/if}}our [REST client docs](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/rest-clients.md) to use this library**
6
+
7
+ Key links:
8
+
9
+ {{#if packageSourceURL}}
10
+ - [Source code]({{ packageSourceURL }})
11
+ {{/if}}
12
+ {{#if packageNPMURL}}
13
+ - [Package (NPM)]({{ packageNPMURL }})
14
+ {{/if}}
15
+ {{#if apiRefURL}}
16
+ - [API reference documentation]({{ apiRefURL }})
17
+ {{/if}}
18
+ {{#if serviceDocURL}}
19
+ - [Product documentation]({{ serviceDocURL }})
20
+ {{/if}}
21
+ {{#if samplesURL}}
22
+ - [Samples]({{ samplesURL }})
23
+ {{/if}}
24
+
25
+ ## Getting started
26
+
27
+ ### Currently supported environments
28
+
29
+ - Node.js version 14.x.x or higher
30
+
31
+ ### Prerequisites
32
+
33
+ - You must have an [Azure subscription](https://azure.microsoft.com/free/){{#if dependencyLink}} and follow [these]({{ dependencyLink }}) instructions{{/if}} to use this package.
34
+
35
+ ### Install the `{{ clientPackageName }}` package
36
+
37
+ Install the {{ clientDescriptiveName }} REST client library for JavaScript with `npm`:
38
+
39
+ ```bash
40
+ npm install {{ clientPackageName }}
41
+ ```
42
+
43
+ ### Create and authenticate a `{{ clientClassName }}`
44
+
45
+ To use an [Azure Active Directory (AAD) token credential](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-with-a-pre-fetched-access-token),
46
+ provide an instance of the desired credential type obtained from the
47
+ [@azure/identity](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#credentials) library.
48
+
49
+ To authenticate with AAD, you must first `npm` install [`@azure/identity`](https://www.npmjs.com/package/@azure/identity) {{#if dependencyLink}}and
50
+ [{{dependencyDescription }}]({{ dependencyLink }}){{/if}}
51
+
52
+ After setup, you can choose which type of [credential](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#credentials) from `@azure/identity` to use.
53
+ As an example, [DefaultAzureCredential](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential)
54
+ can be used to authenticate the client.
55
+
56
+ Set the values of the client ID, tenant ID, and client secret of the AAD application as environment variables:
57
+ AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_CLIENT_SECRET
58
+
59
+ ## Troubleshooting
60
+
61
+ ### Logging
62
+
63
+ Enabling logging may help uncover useful information about failures. In order to see a log of HTTP requests and responses, set the `AZURE_LOG_LEVEL` environment variable to `info`. Alternatively, logging can be enabled at runtime by calling `setLogLevel` in the `@azure/logger`:
64
+
65
+ ```javascript
66
+ import { setLogLevel } from "@azure/logger";
67
+
68
+ setLogLevel("info");
69
+ ```
70
+
71
+ For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger).
@@ -0,0 +1,26 @@
1
+ import { Context } from "mocha";
2
+ import { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder";
3
+ import "./env";
4
+
5
+ const envSetupForPlayback: Record<string, string> = {
6
+ ENDPOINT: "https://endpoint",
7
+ AZURE_CLIENT_ID: "azure_client_id",
8
+ AZURE_CLIENT_SECRET: "azure_client_secret",
9
+ AZURE_TENANT_ID: "88888888-8888-8888-8888-888888888888",
10
+ SUBSCRIPTION_ID: "azure_subscription_id"
11
+ };
12
+
13
+ const recorderEnvSetup: RecorderStartOptions = {
14
+ envSetupForPlayback
15
+ };
16
+
17
+ /**
18
+ * creates the recorder and reads the environment variables from the `.env` file.
19
+ * Should be called first in the test suite to make sure environment variables are
20
+ * read before they are being used.
21
+ */
22
+ export async function createRecorder(context: Context): Promise<Recorder> {
23
+ const recorder = new Recorder(context.currentTest);
24
+ await recorder.start(recorderEnvSetup);
25
+ return recorder;
26
+ }
@@ -0,0 +1,20 @@
1
+ import { Recorder } from "@azure-tools/test-recorder";
2
+ import { assert } from "chai";
3
+ import { createRecorder } from "./utils/recordedClient";
4
+ import { Context } from "mocha";
5
+
6
+ describe("My test", () => {
7
+ let recorder: Recorder;
8
+
9
+ beforeEach(async function(this: Context) {
10
+ recorder = await createRecorder(this);
11
+ });
12
+
13
+ afterEach(async function() {
14
+ await recorder.stop();
15
+ });
16
+
17
+ it("sample test", async function() {
18
+ assert.equal(1, 1);
19
+ });
20
+ });
@@ -0,0 +1,28 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT License.
3
+ import createClient, {
4
+ {{clientClassName}},
5
+ } from "{{clientPackageName}}";
6
+ {{#if hasCredentials }}
7
+ import { DefaultAzureCredential } from "@azure/identity";
8
+ {{/if}}
9
+ import * as dotenv from "dotenv";
10
+
11
+ dotenv.config();
12
+
13
+ /**
14
+ * This is a simple sample on how to create client and please add your own code below
15
+ *
16
+ */
17
+ async function main() {
18
+ {{#each this.clientParamAssignments}}
19
+ {{this}}
20
+ {{/each}}
21
+ const client: {{clientClassName}} = createClient({{this.clientParameterNames}});
22
+ const result = !!client ? "Success" : "Fail";
23
+ console.log(result," to create client.");
24
+ // Add your own code here
25
+ }
26
+
27
+ main().catch(console.error);
28
+
@@ -0,0 +1,4 @@
1
+ # App registration secret for AAD authentication
2
+ AZURE_CLIENT_SECRET=
3
+ AZURE_CLIENT_ID=
4
+ AZURE_TENANT_ID=
@@ -0,0 +1,32 @@
1
+ import { Recorder, RecorderStartOptions, env } from "@azure-tools/test-recorder";
2
+ import { assert } from "chai";
3
+ import { Context } from "mocha";
4
+
5
+
6
+ const replaceableVariables: Record<string, string> = {
7
+ AZURE_CLIENT_ID: "azure_client_id",
8
+ AZURE_CLIENT_SECRET: "azure_client_secret",
9
+ AZURE_TENANT_ID: "88888888-8888-8888-8888-888888888888",
10
+ SUBSCRIPTION_ID: "azure_subscription_id"
11
+ };
12
+
13
+ const recorderOptions: RecorderStartOptions = {
14
+ envSetupForPlayback: replaceableVariables,
15
+ };
16
+
17
+ describe("My test", () => {
18
+ let recorder: Recorder;
19
+
20
+ beforeEach(async function (this: Context) {
21
+ recorder = new Recorder(this.currentTest);
22
+ await recorder.start(recorderOptions);
23
+ });
24
+
25
+ afterEach(async function () {
26
+ await recorder.stop();
27
+ });
28
+
29
+ it("sample test", async function () {
30
+ console.log("Hi, I'm a test!");
31
+ });
32
+ });
File without changes
@@ -1,13 +1,15 @@
1
- import { Host, Session } from "@autorest/extension-base";
1
+ import { AutorestExtensionHost, Session } from "@autorest/extension-base";
2
2
  import { CodeModel } from "@autorest/codemodel";
3
3
  import { PackageDetails } from "./models/packageDetails";
4
- import { TracingInfo } from "./models/clientDetails";
4
+ import { DependencyInfo, TracingInfo } from "./models/clientDetails";
5
5
  export interface AutorestOptions {
6
6
  restLevelClient?: boolean;
7
+ rlcShortcut?: boolean;
7
8
  azureArm?: boolean;
8
9
  addCredentials?: boolean;
9
- credentialKeyHeaderName?: string;
10
- credentialScopes?: string[];
10
+ security?: string;
11
+ securityHeaderName?: string;
12
+ securityScopes?: string | string[];
11
13
  srcPath: string;
12
14
  outputPath?: string;
13
15
  title?: string;
@@ -23,9 +25,19 @@ export interface AutorestOptions {
23
25
  skipEnumValidation?: boolean;
24
26
  azureOutputDirectory?: string;
25
27
  headAsBoolean?: boolean;
28
+ isTestPackage?: boolean;
29
+ generateTest?: boolean;
30
+ batch?: [string, any][];
31
+ multiClient?: boolean;
32
+ generateSample?: boolean;
33
+ azureSdkForJs?: boolean;
34
+ productDocLink?: string;
35
+ coreHttpCompatMode?: boolean;
36
+ dependencyInfo?: DependencyInfo;
37
+ lenientModelDeduplication?: boolean;
26
38
  }
27
- export declare function initializeSession(autorestHost: Host): Promise<void>;
39
+ export declare function initializeSession(autorestHost: AutorestExtensionHost): Promise<void>;
28
40
  export declare function getSession(): Session<CodeModel>;
29
- export declare function getHost(): Host;
41
+ export declare function getHost(): AutorestExtensionHost;
30
42
  export declare function getAutorestOptions(): AutorestOptions;
31
43
  //# sourceMappingURL=autorestSession.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"autorestSession.d.ts","sourceRoot":"","sources":["../../src/autorestSession.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAgB,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,SAAS,EAAmB,MAAM,qBAAqB,CAAC;AAEjE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,WAAW,eAAe;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,cAAc,CAAC;IAC/B,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAMD,wBAAsB,iBAAiB,CAAC,YAAY,EAAE,IAAI,iBAYzD;AAED,wBAAgB,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC,CAQ/C;AAED,wBAAgB,OAAO,IAAI,IAAI,CAQ9B;AAED,wBAAgB,kBAAkB,IAAI,eAAe,CAQpD"}
1
+ {"version":3,"file":"autorestSession.d.ts","sourceRoot":"","sources":["../../src/autorestSession.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,OAAO,EAER,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,SAAS,EAAmB,MAAM,qBAAqB,CAAC;AAEjE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErE,MAAM,WAAW,eAAe;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,cAAc,CAAC;IAC/B,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC;AAMD,wBAAsB,iBAAiB,CAAC,YAAY,EAAE,qBAAqB,iBAI1E;AAED,wBAAgB,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC,CAQ/C;AAED,wBAAgB,OAAO,IAAI,qBAAqB,CAQ/C;AAED,wBAAgB,kBAAkB,IAAI,eAAe,CAQpD"}
@@ -18,15 +18,9 @@ let session;
18
18
  let options;
19
19
  function initializeSession(autorestHost) {
20
20
  return __awaiter(this, void 0, void 0, function* () {
21
- if (!host) {
22
- host = autorestHost;
23
- }
24
- if (!session) {
25
- session = yield extension_base_1.startSession(host, undefined, codemodel_1.codeModelSchema);
26
- }
27
- if (!options) {
28
- options = yield autorestOptions_1.extractAutorestOptions();
29
- }
21
+ host = autorestHost;
22
+ session = yield (0, extension_base_1.startSession)(host, codemodel_1.codeModelSchema);
23
+ options = yield (0, autorestOptions_1.extractAutorestOptions)();
30
24
  });
31
25
  }
32
26
  exports.initializeSession = initializeSession;
@@ -1 +1 @@
1
- {"version":3,"file":"autorestSession.js","sourceRoot":"","sources":["../../src/autorestSession.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6DAAuE;AACvE,mDAAiE;AACjE,6DAAiE;AA2BjE,IAAI,IAAU,CAAC;AACf,IAAI,OAA2B,CAAC;AAChC,IAAI,OAAwB,CAAC;AAE7B,SAAsB,iBAAiB,CAAC,YAAkB;;QACxD,IAAI,CAAC,IAAI,EAAE;YACT,IAAI,GAAG,YAAY,CAAC;SACrB;QAED,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,GAAG,MAAM,6BAAY,CAAY,IAAI,EAAE,SAAS,EAAE,2BAAe,CAAC,CAAC;SAC3E;QAED,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,GAAG,MAAM,wCAAsB,EAAE,CAAC;SAC1C;IACH,CAAC;CAAA;AAZD,8CAYC;AAED,SAAgB,UAAU;IACxB,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CACb,mGAAmG,CACpG,CAAC;KACH;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AARD,gCAQC;AAED,SAAgB,OAAO;IACrB,IAAI,CAAC,IAAI,EAAE;QACT,MAAM,IAAI,KAAK,CACb,gGAAgG,CACjG,CAAC;KACH;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AARD,0BAQC;AAED,SAAgB,kBAAkB;IAChC,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CACb,oGAAoG,CACrG,CAAC;KACH;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AARD,gDAQC"}
1
+ {"version":3,"file":"autorestSession.js","sourceRoot":"","sources":["../../src/autorestSession.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6DAIkC;AAClC,mDAAiE;AACjE,6DAAiE;AAuCjE,IAAI,IAA2B,CAAC;AAChC,IAAI,OAA2B,CAAC;AAChC,IAAI,OAAwB,CAAC;AAE7B,SAAsB,iBAAiB,CAAC,YAAmC;;QACzE,IAAI,GAAG,YAAY,CAAC;QACpB,OAAO,GAAG,MAAM,IAAA,6BAAY,EAAY,IAAI,EAAE,2BAAe,CAAC,CAAC;QAC/D,OAAO,GAAG,MAAM,IAAA,wCAAsB,GAAE,CAAC;IAC3C,CAAC;CAAA;AAJD,8CAIC;AAED,SAAgB,UAAU;IACxB,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CACb,mGAAmG,CACpG,CAAC;KACH;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AARD,gCAQC;AAED,SAAgB,OAAO;IACrB,IAAI,CAAC,IAAI,EAAE;QACT,MAAM,IAAI,KAAK,CACb,gGAAgG,CACjG,CAAC;KACH;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AARD,0BAQC;AAED,SAAgB,kBAAkB;IAChC,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CACb,oGAAoG,CACrG,CAAC;KACH;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AARD,gDAQC"}
@@ -0,0 +1,3 @@
1
+ import { ClientDetails } from "./models/clientDetails";
2
+ export declare function conflictResolver(clientDetails: ClientDetails): void;
3
+ //# sourceMappingURL=conflictResolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conflictResolver.d.ts","sourceRoot":"","sources":["../../src/conflictResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAIvD,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,aAAa,QAE5D"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.conflictResolver = void 0;
4
+ const RESERVED_MEMBER_NAMES = ["pipeline"];
5
+ function conflictResolver(clientDetails) {
6
+ resolveConflictWithOperationGroupNames(clientDetails);
7
+ }
8
+ exports.conflictResolver = conflictResolver;
9
+ function resolveConflictWithOperationGroupNames(clientDetails) {
10
+ clientDetails.operationGroups.forEach(operationGroup => {
11
+ const isConflict = checkForConflictWithDefinitions(operationGroup.name, clientDetails);
12
+ if (isConflict) {
13
+ if (!checkForConflictWithOperationGroupName(`${operationGroup.name}Operations`, clientDetails)) {
14
+ operationGroup.name = `${operationGroup.name}Operations`;
15
+ operationGroup.key = `${operationGroup.key}Operations`;
16
+ }
17
+ else {
18
+ operationGroup.name = `${operationGroup.name}OperationGrp`;
19
+ operationGroup.key = `${operationGroup.key}OperationGrp`;
20
+ }
21
+ }
22
+ });
23
+ }
24
+ function checkForConflictWithDefinitions(operationGroupName, clientDetails) {
25
+ if (RESERVED_MEMBER_NAMES.includes(operationGroupName.toLowerCase())) {
26
+ return true;
27
+ }
28
+ for (const model of clientDetails.objects) {
29
+ if (model.name === operationGroupName) {
30
+ return true;
31
+ }
32
+ }
33
+ return false;
34
+ }
35
+ function checkForConflictWithOperationGroupName(operationGroupName, clientDetails) {
36
+ for (const og of clientDetails.operationGroups) {
37
+ if (og.name === operationGroupName) {
38
+ return true;
39
+ }
40
+ }
41
+ return false;
42
+ }
43
+ //# sourceMappingURL=conflictResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conflictResolver.js","sourceRoot":"","sources":["../../src/conflictResolver.ts"],"names":[],"mappings":";;;AAEA,MAAM,qBAAqB,GAAG,CAAC,UAAU,CAAC,CAAC;AAE3C,SAAgB,gBAAgB,CAAC,aAA4B;IAC3D,sCAAsC,CAAC,aAAa,CAAC,CAAC;AACxD,CAAC;AAFD,4CAEC;AAED,SAAS,sCAAsC,CAAC,aAA4B;IAC1E,aAAa,CAAC,eAAe,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;QACrD,MAAM,UAAU,GAAY,+BAA+B,CACzD,cAAc,CAAC,IAAI,EACnB,aAAa,CACd,CAAC;QAEF,IAAI,UAAU,EAAE;YACd,IACE,CAAC,sCAAsC,CACrC,GAAG,cAAc,CAAC,IAAI,YAAY,EAClC,aAAa,CACd,EACD;gBACA,cAAc,CAAC,IAAI,GAAG,GAAG,cAAc,CAAC,IAAI,YAAY,CAAC;gBACzD,cAAc,CAAC,GAAG,GAAG,GAAG,cAAc,CAAC,GAAG,YAAY,CAAC;aACxD;iBAAM;gBACL,cAAc,CAAC,IAAI,GAAG,GAAG,cAAc,CAAC,IAAI,cAAc,CAAC;gBAC3D,cAAc,CAAC,GAAG,GAAG,GAAG,cAAc,CAAC,GAAG,cAAc,CAAC;aAC1D;SACF;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,+BAA+B,CACtC,kBAA0B,EAC1B,aAA4B;IAE5B,IAAI,qBAAqB,CAAC,QAAQ,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,EAAE;QACpE,OAAO,IAAI,CAAC;KACb;IAED,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,OAAO,EAAE;QACzC,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE;YACrC,OAAO,IAAI,CAAC;SACb;KACF;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,sCAAsC,CAC7C,kBAA0B,EAC1B,aAA4B;IAE5B,KAAK,MAAM,EAAE,IAAI,aAAa,CAAC,eAAe,EAAE;QAC9C,IAAI,EAAE,CAAC,IAAI,KAAK,kBAAkB,EAAE;YAClC,OAAO,IAAI,CAAC;SACb;KACF;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"LROGenerator.d.ts","sourceRoot":"","sources":["../../../src/generators/LROGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAMnC,wBAAsB,gBAAgB,CACpC,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,OAAO,iBAkCjB"}
1
+ {"version":3,"file":"LROGenerator.d.ts","sourceRoot":"","sources":["../../../src/generators/LROGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAMnC,wBAAsB,gBAAgB,CACpC,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,OAAO,iBAoBjB"}
@@ -15,23 +15,15 @@ const path_1 = require("path");
15
15
  const autorestSession_1 = require("../autorestSession");
16
16
  function generateLroFiles(clientDetails, project) {
17
17
  return __awaiter(this, void 0, void 0, function* () {
18
- const { srcPath, useCoreV2 } = autorestSession_1.getAutorestOptions();
18
+ const { srcPath } = (0, autorestSession_1.getAutorestOptions)();
19
19
  if (!hasAnyLro(clientDetails.operationGroups)) {
20
20
  return;
21
21
  }
22
- const LroClassFile = useCoreV2 ? "coreClientLro.ts" : "coreHttpLro.ts";
22
+ const LroClassFile = "lroImpl.ts";
23
23
  const baseTargetPath = srcPath || "";
24
- const srcDir = path_1.join(__dirname, "..", "..", "..", "src");
25
- const lroDir = path_1.join(srcDir, "lro");
26
- const lroFiles = yield fs_1.promises.readdir(lroDir);
27
- for (let i = 0; i < lroFiles.length; i++) {
28
- const file = lroFiles[i];
29
- const filePath = path_1.join(lroDir, file);
30
- const fileContent = yield fs_1.promises.readFile(filePath, "utf-8");
31
- project.createSourceFile(path_1.join(baseTargetPath, "lro", file), fileContent, { overwrite: true });
32
- }
33
- const fileContent = yield fs_1.promises.readFile(path_1.join(srcDir, LroClassFile), "utf-8");
34
- project.createSourceFile(path_1.join(baseTargetPath, LroClassFile), fileContent, {
24
+ const srcDir = (0, path_1.join)(__dirname, "..", "..", "..", "src");
25
+ const fileContent = yield fs_1.promises.readFile((0, path_1.join)(srcDir, LroClassFile), "utf-8");
26
+ project.createSourceFile((0, path_1.join)(baseTargetPath, LroClassFile), fileContent, {
35
27
  overwrite: true
36
28
  });
37
29
  });
@@ -1 +1 @@
1
- {"version":3,"file":"LROGenerator.js","sourceRoot":"","sources":["../../../src/generators/LROGenerator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAGA,2BAA8B;AAC9B,+BAAwC;AACxC,wDAAwD;AAExD,SAAsB,gBAAgB,CACpC,aAA4B,EAC5B,OAAgB;;QAEhB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,oCAAkB,EAAE,CAAC;QACpD,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE;YAC7C,OAAO;SACR;QACD,MAAM,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,gBAAgB,CAAC;QACvE,MAAM,cAAc,GAAG,OAAO,IAAI,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,WAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,WAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACvC,MAAM,QAAQ,GAAG,MAAM,aAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAEhD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACxC,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YACzB,MAAM,QAAQ,GAAG,WAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACxC,MAAM,WAAW,GAAG,MAAM,aAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAE/D,OAAO,CAAC,gBAAgB,CACtB,WAAQ,CAAC,cAAc,EAAE,KAAK,EAAE,IAAI,CAAC,EACrC,WAAW,EACX,EAAE,SAAS,EAAE,IAAI,EAAE,CACpB,CAAC;SACH;QACD,MAAM,WAAW,GAAG,MAAM,aAAQ,CAAC,QAAQ,CACzC,WAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,EAC9B,OAAO,CACR,CAAC;QACF,OAAO,CAAC,gBAAgB,CACtB,WAAQ,CAAC,cAAc,EAAE,YAAY,CAAC,EACtC,WAAW,EACX;YACE,SAAS,EAAE,IAAI;SAChB,CACF,CAAC;IACJ,CAAC;CAAA;AApCD,4CAoCC;AAED,SAAS,SAAS,CAAC,eAAwC;IACzD,OAAO,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AACtE,CAAC"}
1
+ {"version":3,"file":"LROGenerator.js","sourceRoot":"","sources":["../../../src/generators/LROGenerator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAGA,2BAA8B;AAC9B,+BAAwC;AACxC,wDAAwD;AAExD,SAAsB,gBAAgB,CACpC,aAA4B,EAC5B,OAAgB;;QAEhB,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,oCAAkB,GAAE,CAAC;QACzC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE;YAC7C,OAAO;SACR;QACD,MAAM,YAAY,GAAG,YAAY,CAAC;QAClC,MAAM,cAAc,GAAG,OAAO,IAAI,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,IAAA,WAAQ,EAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAC5D,MAAM,WAAW,GAAG,MAAM,aAAQ,CAAC,QAAQ,CACzC,IAAA,WAAQ,EAAC,MAAM,EAAE,YAAY,CAAC,EAC9B,OAAO,CACR,CAAC;QACF,OAAO,CAAC,gBAAgB,CACtB,IAAA,WAAQ,EAAC,cAAc,EAAE,YAAY,CAAC,EACtC,WAAW,EACX;YACE,SAAS,EAAE,IAAI;SAChB,CACF,CAAC;IACJ,CAAC;CAAA;AAtBD,4CAsBC;AAED,SAAS,SAAS,CAAC,eAAwC;IACzD,OAAO,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AACtE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"clientFileGenerator.d.ts","sourceRoot":"","sources":["../../../src/generators/clientFileGenerator.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,OAAO,EAIR,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAQxD,OAAO,EAEL,qBAAqB,EACtB,MAAM,4BAA4B,CAAC;AAUpC,wBAAgB,cAAc,CAAC,aAAa,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,QA2L5E;AAED,wBAAgB,sBAAsB,CACpC,kBAAkB,EAAE,qBAAqB,EAAE,EAC3C,gBAAgB,EAAE,qBAAqB,EAAE,QAoB1C"}
1
+ {"version":3,"file":"clientFileGenerator.d.ts","sourceRoot":"","sources":["../../../src/generators/clientFileGenerator.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,OAAO,EAOR,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAQxD,OAAO,EAEL,qBAAqB,EACtB,MAAM,4BAA4B,CAAC;AAcpC,wBAAgB,cAAc,CAAC,aAAa,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,QA4M5E;AAsBD,wBAAgB,sBAAsB,CACpC,kBAAkB,EAAE,qBAAqB,EAAE,EAC3C,gBAAgB,EAAE,qBAAqB,EAAE,QAoB1C"}