@azure-tools/typespec-ts 0.13.0 → 0.13.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 (511) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/src/index.d.ts.map +1 -1
  3. package/dist/src/index.js +37 -1
  4. package/dist/src/index.js.map +1 -1
  5. package/dist/src/modelUtils.d.ts +2 -0
  6. package/dist/src/modelUtils.d.ts.map +1 -1
  7. package/dist/src/modelUtils.js +82 -13
  8. package/dist/src/modelUtils.js.map +1 -1
  9. package/dist/src/modular/buildApiIndex.d.ts.map +1 -1
  10. package/dist/src/modular/buildApiIndex.js +1 -1
  11. package/dist/src/modular/buildApiIndex.js.map +1 -1
  12. package/dist/src/modular/buildClassicalClient.d.ts.map +1 -1
  13. package/dist/src/modular/buildClassicalClient.js +6 -6
  14. package/dist/src/modular/buildClassicalClient.js.map +1 -1
  15. package/dist/src/modular/buildClientContext.d.ts.map +1 -1
  16. package/dist/src/modular/buildClientContext.js +9 -3
  17. package/dist/src/modular/buildClientContext.js.map +1 -1
  18. package/dist/src/modular/buildCodeModel.d.ts.map +1 -1
  19. package/dist/src/modular/buildCodeModel.js +190 -169
  20. package/dist/src/modular/buildCodeModel.js.map +1 -1
  21. package/dist/src/modular/buildOperations.d.ts.map +1 -1
  22. package/dist/src/modular/buildOperations.js +20 -2
  23. package/dist/src/modular/buildOperations.js.map +1 -1
  24. package/dist/src/modular/buildRootIndex.js +2 -2
  25. package/dist/src/modular/buildRootIndex.js.map +1 -1
  26. package/dist/src/modular/buildSharedTypes.d.ts.map +1 -1
  27. package/dist/src/modular/buildSharedTypes.js +8 -10
  28. package/dist/src/modular/buildSharedTypes.js.map +1 -1
  29. package/dist/src/modular/emitModels.d.ts.map +1 -1
  30. package/dist/src/modular/emitModels.js +19 -6
  31. package/dist/src/modular/emitModels.js.map +1 -1
  32. package/dist/src/modular/helpers/clientHelpers.d.ts.map +1 -1
  33. package/dist/src/modular/helpers/clientHelpers.js +2 -11
  34. package/dist/src/modular/helpers/clientHelpers.js.map +1 -1
  35. package/dist/src/modular/helpers/credentialHelpers.js +1 -1
  36. package/dist/src/modular/helpers/credentialHelpers.js.map +1 -1
  37. package/dist/src/modular/helpers/fixmeHelpers.d.ts +2 -0
  38. package/dist/src/modular/helpers/fixmeHelpers.d.ts.map +1 -0
  39. package/dist/src/modular/helpers/fixmeHelpers.js +4 -0
  40. package/dist/src/modular/helpers/fixmeHelpers.js.map +1 -0
  41. package/dist/src/modular/helpers/namingHelpers.d.ts +19 -1
  42. package/dist/src/modular/helpers/namingHelpers.d.ts.map +1 -1
  43. package/dist/src/modular/helpers/namingHelpers.js +99 -0
  44. package/dist/src/modular/helpers/namingHelpers.js.map +1 -1
  45. package/dist/src/modular/helpers/operationHelpers.d.ts +2 -0
  46. package/dist/src/modular/helpers/operationHelpers.d.ts.map +1 -1
  47. package/dist/src/modular/helpers/operationHelpers.js +117 -35
  48. package/dist/src/modular/helpers/operationHelpers.js.map +1 -1
  49. package/dist/src/modular/helpers/parameterHelpers.js +1 -1
  50. package/dist/src/modular/helpers/parameterHelpers.js.map +1 -1
  51. package/dist/src/modular/helpers/typeHelpers.d.ts.map +1 -1
  52. package/dist/src/modular/helpers/typeHelpers.js +31 -12
  53. package/dist/src/modular/helpers/typeHelpers.js.map +1 -1
  54. package/dist/src/modular/modularCodeModel.d.ts +2 -1
  55. package/dist/src/modular/modularCodeModel.d.ts.map +1 -1
  56. package/dist/src/operationUtil.d.ts +1 -1
  57. package/dist/src/operationUtil.d.ts.map +1 -1
  58. package/dist/src/operationUtil.js +21 -3
  59. package/dist/src/operationUtil.js.map +1 -1
  60. package/dist/src/transform/transform.d.ts.map +1 -1
  61. package/dist/src/transform/transform.js +2 -2
  62. package/dist/src/transform/transform.js.map +1 -1
  63. package/dist/src/transform/transformApiVersionInfo.js +9 -0
  64. package/dist/src/transform/transformApiVersionInfo.js.map +1 -1
  65. package/dist/src/transform/transformHelperFunctionDetails.d.ts.map +1 -1
  66. package/dist/src/transform/transformHelperFunctionDetails.js +18 -0
  67. package/dist/src/transform/transformHelperFunctionDetails.js.map +1 -1
  68. package/dist/src/transform/transformParameters.d.ts.map +1 -1
  69. package/dist/src/transform/transformParameters.js +27 -34
  70. package/dist/src/transform/transformParameters.js.map +1 -1
  71. package/dist/src/transform/transformPaths.d.ts.map +1 -1
  72. package/dist/src/transform/transformPaths.js +9 -0
  73. package/dist/src/transform/transformPaths.js.map +1 -1
  74. package/dist/src/transform/transformResponses.d.ts.map +1 -1
  75. package/dist/src/transform/transformResponses.js +10 -1
  76. package/dist/src/transform/transformResponses.js.map +1 -1
  77. package/dist/src/transform/transformSchemas.d.ts.map +1 -1
  78. package/dist/src/transform/transformSchemas.js +9 -0
  79. package/dist/src/transform/transformSchemas.js.map +1 -1
  80. package/dist/tsconfig.tsbuildinfo +1 -1
  81. package/package.json +14 -7
  82. package/src/index.ts +47 -2
  83. package/src/modelUtils.ts +90 -15
  84. package/src/modular/buildApiIndex.ts +3 -1
  85. package/src/modular/buildClassicalClient.ts +8 -6
  86. package/src/modular/buildClientContext.ts +11 -3
  87. package/src/modular/buildCodeModel.ts +221 -196
  88. package/src/modular/buildOperations.ts +23 -1
  89. package/src/modular/buildRootIndex.ts +2 -2
  90. package/src/modular/buildSharedTypes.ts +8 -10
  91. package/src/modular/emitModels.ts +14 -0
  92. package/src/modular/helpers/clientHelpers.ts +3 -13
  93. package/src/modular/helpers/credentialHelpers.ts +1 -1
  94. package/src/modular/helpers/fixmeHelpers.ts +3 -0
  95. package/src/modular/helpers/namingHelpers.ts +121 -1
  96. package/src/modular/helpers/operationHelpers.ts +173 -66
  97. package/src/modular/helpers/parameterHelpers.ts +1 -1
  98. package/src/modular/helpers/typeHelpers.ts +33 -12
  99. package/src/modular/modularCodeModel.ts +3 -1
  100. package/src/operationUtil.ts +24 -3
  101. package/src/transform/transform.ts +4 -1
  102. package/src/transform/transformApiVersionInfo.ts +8 -0
  103. package/src/transform/transformHelperFunctionDetails.ts +16 -0
  104. package/src/transform/transformParameters.ts +42 -40
  105. package/src/transform/transformPaths.ts +8 -0
  106. package/src/transform/transformResponses.ts +9 -1
  107. package/src/transform/transformSchemas.ts +8 -0
  108. package/.eslintrc.json +0 -23
  109. package/.prettierignore +0 -1
  110. package/.prettierrc +0 -7
  111. package/.rush/temp/operation/build/all.log +0 -1
  112. package/.rush/temp/operation/build/state.json +0 -3
  113. package/.rush/temp/package-deps_build.json +0 -442
  114. package/.rush/temp/shrinkwrap-deps.json +0 -490
  115. package/CONTRIBUTING.md +0 -137
  116. package/test/commands/cadl-ranch-list.ts +0 -116
  117. package/test/commands/check-clean-tree.ts +0 -55
  118. package/test/commands/childProcessOnExit.ts +0 -16
  119. package/test/commands/gen-cadl-ranch.ts +0 -25
  120. package/test/commands/run.ts +0 -31
  121. package/test/integration/arrayItemTypes.spec.ts +0 -96
  122. package/test/integration/authApiKey.spec.ts +0 -38
  123. package/test/integration/authOauth2.spec.ts +0 -65
  124. package/test/integration/authUnion.spec.ts +0 -72
  125. package/test/integration/azurecore.spec.ts +0 -170
  126. package/test/integration/collectionFormat.spec.ts +0 -118
  127. package/test/integration/dictionary.spec.ts +0 -106
  128. package/test/integration/extensibleEnums.spec.ts +0 -61
  129. package/test/integration/fixedEnums.spec.ts +0 -52
  130. package/test/integration/generated/arrays/itemTypes/src/arrayItemTypesClient.ts +0 -35
  131. package/test/integration/generated/arrays/itemTypes/src/clientDefinitions.ts +0 -165
  132. package/test/integration/generated/arrays/itemTypes/src/index.ts +0 -13
  133. package/test/integration/generated/arrays/itemTypes/src/logger.ts +0 -5
  134. package/test/integration/generated/arrays/itemTypes/src/models.ts +0 -9
  135. package/test/integration/generated/arrays/itemTypes/src/outputModels.ts +0 -9
  136. package/test/integration/generated/arrays/itemTypes/src/parameters.ts +0 -86
  137. package/test/integration/generated/arrays/itemTypes/src/responses.ts +0 -115
  138. package/test/integration/generated/arrays/itemTypes/tspconfig.yaml +0 -15
  139. package/test/integration/generated/authentication/apiKey/.eslintrc.json +0 -11
  140. package/test/integration/generated/authentication/apiKey/README.md +0 -56
  141. package/test/integration/generated/authentication/apiKey/api-extractor.json +0 -18
  142. package/test/integration/generated/authentication/apiKey/karma.conf.js +0 -133
  143. package/test/integration/generated/authentication/apiKey/package.json +0 -103
  144. package/test/integration/generated/authentication/apiKey/rollup.config.js +0 -118
  145. package/test/integration/generated/authentication/apiKey/src/authApiKeyClient.ts +0 -45
  146. package/test/integration/generated/authentication/apiKey/src/clientDefinitions.ts +0 -33
  147. package/test/integration/generated/authentication/apiKey/src/index.ts +0 -12
  148. package/test/integration/generated/authentication/apiKey/src/logger.ts +0 -5
  149. package/test/integration/generated/authentication/apiKey/src/outputModels.ts +0 -6
  150. package/test/integration/generated/authentication/apiKey/src/parameters.ts +0 -7
  151. package/test/integration/generated/authentication/apiKey/src/responses.ts +0 -21
  152. package/test/integration/generated/authentication/apiKey/test/public/sampleTest.spec.ts +0 -23
  153. package/test/integration/generated/authentication/apiKey/test/public/utils/env.browser.ts +0 -2
  154. package/test/integration/generated/authentication/apiKey/test/public/utils/env.ts +0 -6
  155. package/test/integration/generated/authentication/apiKey/test/public/utils/recordedClient.ts +0 -29
  156. package/test/integration/generated/authentication/apiKey/tsconfig.json +0 -25
  157. package/test/integration/generated/authentication/apiKey/tspconfig.yaml +0 -13
  158. package/test/integration/generated/authentication/oauth2/karma.conf.js +0 -133
  159. package/test/integration/generated/authentication/oauth2/src/authOauth2Client.ts +0 -45
  160. package/test/integration/generated/authentication/oauth2/src/clientDefinitions.ts +0 -33
  161. package/test/integration/generated/authentication/oauth2/src/index.ts +0 -12
  162. package/test/integration/generated/authentication/oauth2/src/logger.ts +0 -5
  163. package/test/integration/generated/authentication/oauth2/src/outputModels.ts +0 -6
  164. package/test/integration/generated/authentication/oauth2/src/parameters.ts +0 -7
  165. package/test/integration/generated/authentication/oauth2/src/responses.ts +0 -21
  166. package/test/integration/generated/authentication/oauth2/test/public/sampleTest.spec.ts +0 -23
  167. package/test/integration/generated/authentication/oauth2/test/public/utils/env.browser.ts +0 -2
  168. package/test/integration/generated/authentication/oauth2/test/public/utils/env.ts +0 -6
  169. package/test/integration/generated/authentication/oauth2/test/public/utils/recordedClient.ts +0 -29
  170. package/test/integration/generated/authentication/oauth2/tspconfig.yaml +0 -15
  171. package/test/integration/generated/authentication/union/karma.conf.js +0 -133
  172. package/test/integration/generated/authentication/union/src/authUnionClient.ts +0 -46
  173. package/test/integration/generated/authentication/union/src/clientDefinitions.ts +0 -27
  174. package/test/integration/generated/authentication/union/src/index.ts +0 -11
  175. package/test/integration/generated/authentication/union/src/logger.ts +0 -5
  176. package/test/integration/generated/authentication/union/src/parameters.ts +0 -7
  177. package/test/integration/generated/authentication/union/src/responses.ts +0 -14
  178. package/test/integration/generated/authentication/union/test/public/sampleTest.spec.ts +0 -23
  179. package/test/integration/generated/authentication/union/test/public/utils/env.browser.ts +0 -2
  180. package/test/integration/generated/authentication/union/test/public/utils/env.ts +0 -6
  181. package/test/integration/generated/authentication/union/test/public/utils/recordedClient.ts +0 -29
  182. package/test/integration/generated/authentication/union/tspconfig.yaml +0 -15
  183. package/test/integration/generated/azure/core/.eslintrc.json +0 -11
  184. package/test/integration/generated/azure/core/README.md +0 -56
  185. package/test/integration/generated/azure/core/api-extractor.json +0 -18
  186. package/test/integration/generated/azure/core/package.json +0 -81
  187. package/test/integration/generated/azure/core/rollup.config.js +0 -118
  188. package/test/integration/generated/azure/core/src/azureCoreClient.ts +0 -35
  189. package/test/integration/generated/azure/core/src/clientDefinitions.ts +0 -108
  190. package/test/integration/generated/azure/core/src/index.ts +0 -16
  191. package/test/integration/generated/azure/core/src/isUnexpected.ts +0 -178
  192. package/test/integration/generated/azure/core/src/logger.ts +0 -5
  193. package/test/integration/generated/azure/core/src/models.ts +0 -18
  194. package/test/integration/generated/azure/core/src/outputModels.ts +0 -38
  195. package/test/integration/generated/azure/core/src/paginateHelper.ts +0 -204
  196. package/test/integration/generated/azure/core/src/parameters.ts +0 -68
  197. package/test/integration/generated/azure/core/src/responses.ts +0 -158
  198. package/test/integration/generated/azure/core/src/serializeHelper.ts +0 -16
  199. package/test/integration/generated/azure/core/tsconfig.json +0 -25
  200. package/test/integration/generated/azure/core/tspconfig.yaml +0 -15
  201. package/test/integration/generated/azure/core-traits/.eslintrc.json +0 -11
  202. package/test/integration/generated/azure/core-traits/README.md +0 -56
  203. package/test/integration/generated/azure/core-traits/api-extractor.json +0 -18
  204. package/test/integration/generated/azure/core-traits/package.json +0 -80
  205. package/test/integration/generated/azure/core-traits/rollup.config.js +0 -118
  206. package/test/integration/generated/azure/core-traits/src/azureCoreTraitsClient.ts +0 -35
  207. package/test/integration/generated/azure/core-traits/src/clientDefinitions.ts +0 -22
  208. package/test/integration/generated/azure/core-traits/src/index.ts +0 -13
  209. package/test/integration/generated/azure/core-traits/src/isUnexpected.ts +0 -97
  210. package/test/integration/generated/azure/core-traits/src/logger.ts +0 -5
  211. package/test/integration/generated/azure/core-traits/src/outputModels.ts +0 -25
  212. package/test/integration/generated/azure/core-traits/src/parameters.ts +0 -26
  213. package/test/integration/generated/azure/core-traits/src/responses.ts +0 -32
  214. package/test/integration/generated/azure/core-traits/tsconfig.json +0 -25
  215. package/test/integration/generated/azure/core-traits/tspconfig.yaml +0 -15
  216. package/test/integration/generated/dictionary/.eslintrc.json +0 -11
  217. package/test/integration/generated/dictionary/README.md +0 -56
  218. package/test/integration/generated/dictionary/api-extractor.json +0 -18
  219. package/test/integration/generated/dictionary/package.json +0 -80
  220. package/test/integration/generated/dictionary/rollup.config.js +0 -118
  221. package/test/integration/generated/dictionary/src/clientDefinitions.ts +0 -180
  222. package/test/integration/generated/dictionary/src/dictClient.ts +0 -33
  223. package/test/integration/generated/dictionary/src/index.ts +0 -13
  224. package/test/integration/generated/dictionary/src/logger.ts +0 -5
  225. package/test/integration/generated/dictionary/src/models.ts +0 -9
  226. package/test/integration/generated/dictionary/src/outputModels.ts +0 -9
  227. package/test/integration/generated/dictionary/src/parameters.ts +0 -94
  228. package/test/integration/generated/dictionary/src/responses.ts +0 -126
  229. package/test/integration/generated/dictionary/tsconfig.json +0 -25
  230. package/test/integration/generated/dictionary/tspconfig.yaml +0 -15
  231. package/test/integration/generated/enums/extensible/.eslintrc.json +0 -11
  232. package/test/integration/generated/enums/extensible/README.md +0 -56
  233. package/test/integration/generated/enums/extensible/api-extractor.json +0 -18
  234. package/test/integration/generated/enums/extensible/package.json +0 -80
  235. package/test/integration/generated/enums/extensible/rollup.config.js +0 -118
  236. package/test/integration/generated/enums/extensible/src/clientDefinitions.ts +0 -45
  237. package/test/integration/generated/enums/extensible/src/index.ts +0 -11
  238. package/test/integration/generated/enums/extensible/src/logger.ts +0 -5
  239. package/test/integration/generated/enums/extensible/src/parameters.ts +0 -23
  240. package/test/integration/generated/enums/extensible/src/responses.ts +0 -26
  241. package/test/integration/generated/enums/extensible/src/typeEnumExtensible.ts +0 -35
  242. package/test/integration/generated/enums/extensible/tsconfig.json +0 -25
  243. package/test/integration/generated/enums/extensible/tspconfig.yaml +0 -14
  244. package/test/integration/generated/enums/fixed/.eslintrc.json +0 -11
  245. package/test/integration/generated/enums/fixed/README.md +0 -56
  246. package/test/integration/generated/enums/fixed/api-extractor.json +0 -18
  247. package/test/integration/generated/enums/fixed/package.json +0 -80
  248. package/test/integration/generated/enums/fixed/rollup.config.js +0 -118
  249. package/test/integration/generated/enums/fixed/src/clientDefinitions.ts +0 -43
  250. package/test/integration/generated/enums/fixed/src/index.ts +0 -11
  251. package/test/integration/generated/enums/fixed/src/logger.ts +0 -5
  252. package/test/integration/generated/enums/fixed/src/parameters.ts +0 -36
  253. package/test/integration/generated/enums/fixed/src/responses.ts +0 -27
  254. package/test/integration/generated/enums/fixed/src/typeEnumFixed.ts +0 -35
  255. package/test/integration/generated/enums/fixed/tsconfig.json +0 -25
  256. package/test/integration/generated/enums/fixed/tspconfig.yaml +0 -14
  257. package/test/integration/generated/hello/.eslintrc.json +0 -11
  258. package/test/integration/generated/hello/README.md +0 -56
  259. package/test/integration/generated/hello/api-extractor.json +0 -18
  260. package/test/integration/generated/hello/package.json +0 -80
  261. package/test/integration/generated/hello/rollup.config.js +0 -118
  262. package/test/integration/generated/hello/src/clientDefinitions.ts +0 -19
  263. package/test/integration/generated/hello/src/hello.ts +0 -29
  264. package/test/integration/generated/hello/src/index.ts +0 -11
  265. package/test/integration/generated/hello/src/parameters.ts +0 -6
  266. package/test/integration/generated/hello/src/responses.ts +0 -10
  267. package/test/integration/generated/hello/tsconfig.json +0 -25
  268. package/test/integration/generated/hello/tspconfig.yaml +0 -14
  269. package/test/integration/generated/internal/src/clientDefinitions.ts +0 -53
  270. package/test/integration/generated/internal/src/index.ts +0 -12
  271. package/test/integration/generated/internal/src/internalClient.ts +0 -35
  272. package/test/integration/generated/internal/src/logger.ts +0 -5
  273. package/test/integration/generated/internal/src/outputModels.ts +0 -17
  274. package/test/integration/generated/internal/src/parameters.ts +0 -45
  275. package/test/integration/generated/internal/src/responses.ts +0 -33
  276. package/test/integration/generated/internal/tspconfig.yaml +0 -14
  277. package/test/integration/generated/lro/lroCore/.eslintrc.json +0 -11
  278. package/test/integration/generated/lro/lroCore/README.md +0 -56
  279. package/test/integration/generated/lro/lroCore/api-extractor.json +0 -18
  280. package/test/integration/generated/lro/lroCore/package.json +0 -82
  281. package/test/integration/generated/lro/lroCore/rollup.config.js +0 -118
  282. package/test/integration/generated/lro/lroCore/src/clientDefinitions.ts +0 -54
  283. package/test/integration/generated/lro/lroCore/src/index.ts +0 -15
  284. package/test/integration/generated/lro/lroCore/src/isUnexpected.ts +0 -135
  285. package/test/integration/generated/lro/lroCore/src/logger.ts +0 -5
  286. package/test/integration/generated/lro/lroCore/src/models.ts +0 -8
  287. package/test/integration/generated/lro/lroCore/src/outputModels.ts +0 -50
  288. package/test/integration/generated/lro/lroCore/src/parameters.ts +0 -25
  289. package/test/integration/generated/lro/lroCore/src/pollingHelper.ts +0 -113
  290. package/test/integration/generated/lro/lroCore/src/responses.ts +0 -109
  291. package/test/integration/generated/lro/lroCore/src/specsAzureCoreLroStandard.ts +0 -35
  292. package/test/integration/generated/lro/lroCore/tsconfig.json +0 -25
  293. package/test/integration/generated/lro/lroCore/tspconfig.yaml +0 -14
  294. package/test/integration/generated/lro/lroRPC/.eslintrc.json +0 -11
  295. package/test/integration/generated/lro/lroRPC/README.md +0 -56
  296. package/test/integration/generated/lro/lroRPC/api-extractor.json +0 -18
  297. package/test/integration/generated/lro/lroRPC/package.json +0 -82
  298. package/test/integration/generated/lro/lroRPC/rollup.config.js +0 -118
  299. package/test/integration/generated/lro/lroRPC/src/clientDefinitions.ts +0 -79
  300. package/test/integration/generated/lro/lroRPC/src/index.ts +0 -15
  301. package/test/integration/generated/lro/lroRPC/src/isUnexpected.ts +0 -153
  302. package/test/integration/generated/lro/lroRPC/src/logger.ts +0 -5
  303. package/test/integration/generated/lro/lroRPC/src/models.ts +0 -8
  304. package/test/integration/generated/lro/lroRPC/src/outputModels.ts +0 -40
  305. package/test/integration/generated/lro/lroRPC/src/parameters.ts +0 -20
  306. package/test/integration/generated/lro/lroRPC/src/pollingHelper.ts +0 -127
  307. package/test/integration/generated/lro/lroRPC/src/responses.ts +0 -124
  308. package/test/integration/generated/lro/lroRPC/src/specsAzureCoreLroRpc.ts +0 -35
  309. package/test/integration/generated/lro/lroRPC/tsconfig.json +0 -25
  310. package/test/integration/generated/lro/lroRPC/tspconfig.yaml +0 -14
  311. package/test/integration/generated/models/inheritance/.eslintrc.json +0 -11
  312. package/test/integration/generated/models/inheritance/README.md +0 -56
  313. package/test/integration/generated/models/inheritance/api-extractor.json +0 -18
  314. package/test/integration/generated/models/inheritance/package.json +0 -80
  315. package/test/integration/generated/models/inheritance/rollup.config.js +0 -118
  316. package/test/integration/generated/models/inheritance/src/clientDefinitions.ts +0 -81
  317. package/test/integration/generated/models/inheritance/src/index.ts +0 -13
  318. package/test/integration/generated/models/inheritance/src/logger.ts +0 -5
  319. package/test/integration/generated/models/inheritance/src/models.ts +0 -52
  320. package/test/integration/generated/models/inheritance/src/outputModels.ts +0 -52
  321. package/test/integration/generated/models/inheritance/src/parameters.ts +0 -35
  322. package/test/integration/generated/models/inheritance/src/responses.ts +0 -56
  323. package/test/integration/generated/models/inheritance/src/typeModelInheritance.ts +0 -35
  324. package/test/integration/generated/models/inheritance/tsconfig.json +0 -25
  325. package/test/integration/generated/models/inheritance/tspconfig.yaml +0 -14
  326. package/test/integration/generated/models/propertyNullable/.eslintrc.json +0 -11
  327. package/test/integration/generated/models/propertyNullable/README.md +0 -56
  328. package/test/integration/generated/models/propertyNullable/api-extractor.json +0 -18
  329. package/test/integration/generated/models/propertyNullable/package.json +0 -80
  330. package/test/integration/generated/models/propertyNullable/rollup.config.js +0 -118
  331. package/test/integration/generated/models/propertyNullable/src/clientDefinitions.ts +0 -227
  332. package/test/integration/generated/models/propertyNullable/src/index.ts +0 -13
  333. package/test/integration/generated/models/propertyNullable/src/logger.ts +0 -5
  334. package/test/integration/generated/models/propertyNullable/src/models.ts +0 -56
  335. package/test/integration/generated/models/propertyNullable/src/outputModels.ts +0 -56
  336. package/test/integration/generated/models/propertyNullable/src/parameters.ts +0 -197
  337. package/test/integration/generated/models/propertyNullable/src/responses.ts +0 -144
  338. package/test/integration/generated/models/propertyNullable/src/typePropertyNullable.ts +0 -35
  339. package/test/integration/generated/models/propertyNullable/tsconfig.json +0 -25
  340. package/test/integration/generated/models/propertyNullable/tspconfig.yaml +0 -14
  341. package/test/integration/generated/models/propertyOptional/.eslintrc.json +0 -11
  342. package/test/integration/generated/models/propertyOptional/README.md +0 -56
  343. package/test/integration/generated/models/propertyOptional/api-extractor.json +0 -18
  344. package/test/integration/generated/models/propertyOptional/package.json +0 -80
  345. package/test/integration/generated/models/propertyOptional/rollup.config.js +0 -118
  346. package/test/integration/generated/models/propertyOptional/src/clientDefinitions.ts +0 -263
  347. package/test/integration/generated/models/propertyOptional/src/index.ts +0 -13
  348. package/test/integration/generated/models/propertyOptional/src/logger.ts +0 -5
  349. package/test/integration/generated/models/propertyOptional/src/models.ts +0 -46
  350. package/test/integration/generated/models/propertyOptional/src/outputModels.ts +0 -46
  351. package/test/integration/generated/models/propertyOptional/src/parameters.ts +0 -125
  352. package/test/integration/generated/models/propertyOptional/src/responses.ts +0 -169
  353. package/test/integration/generated/models/propertyOptional/src/typePropertyOptional.ts +0 -35
  354. package/test/integration/generated/models/propertyOptional/tsconfig.json +0 -25
  355. package/test/integration/generated/models/propertyOptional/tspconfig.yaml +0 -14
  356. package/test/integration/generated/models/propertyTypes/.eslintrc.json +0 -11
  357. package/test/integration/generated/models/propertyTypes/README.md +0 -56
  358. package/test/integration/generated/models/propertyTypes/api-extractor.json +0 -18
  359. package/test/integration/generated/models/propertyTypes/package.json +0 -80
  360. package/test/integration/generated/models/propertyTypes/rollup.config.js +0 -118
  361. package/test/integration/generated/models/propertyTypes/src/clientDefinitions.ts +0 -310
  362. package/test/integration/generated/models/propertyTypes/src/index.ts +0 -13
  363. package/test/integration/generated/models/propertyTypes/src/logger.ts +0 -5
  364. package/test/integration/generated/models/propertyTypes/src/models.ts +0 -123
  365. package/test/integration/generated/models/propertyTypes/src/outputModels.ts +0 -123
  366. package/test/integration/generated/models/propertyTypes/src/parameters.ts +0 -189
  367. package/test/integration/generated/models/propertyTypes/src/responses.ts +0 -234
  368. package/test/integration/generated/models/propertyTypes/src/typePropertyValueTypes.ts +0 -35
  369. package/test/integration/generated/models/propertyTypes/tsconfig.json +0 -25
  370. package/test/integration/generated/models/propertyTypes/tspconfig.yaml +0 -14
  371. package/test/integration/generated/models/usage/.eslintrc.json +0 -11
  372. package/test/integration/generated/models/usage/README.md +0 -56
  373. package/test/integration/generated/models/usage/api-extractor.json +0 -18
  374. package/test/integration/generated/models/usage/package.json +0 -80
  375. package/test/integration/generated/models/usage/rollup.config.js +0 -118
  376. package/test/integration/generated/models/usage/src/clientDefinitions.ts +0 -41
  377. package/test/integration/generated/models/usage/src/index.ts +0 -13
  378. package/test/integration/generated/models/usage/src/logger.ts +0 -5
  379. package/test/integration/generated/models/usage/src/models.ts +0 -12
  380. package/test/integration/generated/models/usage/src/outputModels.ts +0 -12
  381. package/test/integration/generated/models/usage/src/parameters.ts +0 -19
  382. package/test/integration/generated/models/usage/src/responses.ts +0 -22
  383. package/test/integration/generated/models/usage/src/typeModelUsage.ts +0 -35
  384. package/test/integration/generated/models/usage/tsconfig.json +0 -25
  385. package/test/integration/generated/models/usage/tspconfig.yaml +0 -14
  386. package/test/integration/generated/models/visibility/.eslintrc.json +0 -11
  387. package/test/integration/generated/models/visibility/README.md +0 -56
  388. package/test/integration/generated/models/visibility/api-extractor.json +0 -18
  389. package/test/integration/generated/models/visibility/package.json +0 -80
  390. package/test/integration/generated/models/visibility/rollup.config.js +0 -118
  391. package/test/integration/generated/models/visibility/src/clientDefinitions.ts +0 -40
  392. package/test/integration/generated/models/visibility/src/index.ts +0 -13
  393. package/test/integration/generated/models/visibility/src/logger.ts +0 -5
  394. package/test/integration/generated/models/visibility/src/models.ts +0 -14
  395. package/test/integration/generated/models/visibility/src/outputModels.ts +0 -16
  396. package/test/integration/generated/models/visibility/src/parameters.ts +0 -41
  397. package/test/integration/generated/models/visibility/src/responses.ts +0 -36
  398. package/test/integration/generated/models/visibility/src/typeModelVisibility.ts +0 -35
  399. package/test/integration/generated/models/visibility/tsconfig.json +0 -25
  400. package/test/integration/generated/models/visibility/tspconfig.yaml +0 -14
  401. package/test/integration/generated/parameters/collection-format/src/clientDefinitions.ts +0 -63
  402. package/test/integration/generated/parameters/collection-format/src/collectionFormatClient.ts +0 -35
  403. package/test/integration/generated/parameters/collection-format/src/index.ts +0 -12
  404. package/test/integration/generated/parameters/collection-format/src/logger.ts +0 -5
  405. package/test/integration/generated/parameters/collection-format/src/parameters.ts +0 -71
  406. package/test/integration/generated/parameters/collection-format/src/responses.ts +0 -34
  407. package/test/integration/generated/parameters/collection-format/src/serializeHelper.ts +0 -28
  408. package/test/integration/generated/parameters/collection-format/tspconfig.yaml +0 -14
  409. package/test/integration/generated/parameters/spread/src/clientDefinitions.ts +0 -61
  410. package/test/integration/generated/parameters/spread/src/index.ts +0 -12
  411. package/test/integration/generated/parameters/spread/src/logger.ts +0 -5
  412. package/test/integration/generated/parameters/spread/src/models.ts +0 -7
  413. package/test/integration/generated/parameters/spread/src/parameters.ts +0 -61
  414. package/test/integration/generated/parameters/spread/src/parametersSpread.ts +0 -35
  415. package/test/integration/generated/parameters/spread/src/responses.ts +0 -25
  416. package/test/integration/generated/parameters/spread/tspconfig.yaml +0 -12
  417. package/test/integration/generated/projection/src/clientDefinitions.ts +0 -71
  418. package/test/integration/generated/projection/src/index.ts +0 -12
  419. package/test/integration/generated/projection/src/logger.ts +0 -5
  420. package/test/integration/generated/projection/src/models.ts +0 -22
  421. package/test/integration/generated/projection/src/parameters.ts +0 -48
  422. package/test/integration/generated/projection/src/projectionClient.ts +0 -35
  423. package/test/integration/generated/projection/src/responses.ts +0 -34
  424. package/test/integration/generated/projection/tspconfig.yaml +0 -14
  425. package/test/integration/generated/resiliency/srvDriven1/.eslintrc.json +0 -11
  426. package/test/integration/generated/resiliency/srvDriven1/README.md +0 -56
  427. package/test/integration/generated/resiliency/srvDriven1/api-extractor.json +0 -18
  428. package/test/integration/generated/resiliency/srvDriven1/package.json +0 -80
  429. package/test/integration/generated/resiliency/srvDriven1/rollup.config.js +0 -118
  430. package/test/integration/generated/resiliency/srvDriven1/src/clientDefinitions.ts +0 -46
  431. package/test/integration/generated/resiliency/srvDriven1/src/index.ts +0 -11
  432. package/test/integration/generated/resiliency/srvDriven1/src/logger.ts +0 -5
  433. package/test/integration/generated/resiliency/srvDriven1/src/parameters.ts +0 -30
  434. package/test/integration/generated/resiliency/srvDriven1/src/responses.ts +0 -19
  435. package/test/integration/generated/resiliency/srvDriven1/src/serviceDrivenOldClient.ts +0 -43
  436. package/test/integration/generated/resiliency/srvDriven1/tsconfig.json +0 -25
  437. package/test/integration/generated/resiliency/srvDriven1/tspconfig.yaml +0 -15
  438. package/test/integration/generated/resiliency/srvDriven2/.eslintrc.json +0 -11
  439. package/test/integration/generated/resiliency/srvDriven2/README.md +0 -65
  440. package/test/integration/generated/resiliency/srvDriven2/api-extractor.json +0 -18
  441. package/test/integration/generated/resiliency/srvDriven2/package.json +0 -80
  442. package/test/integration/generated/resiliency/srvDriven2/rollup.config.js +0 -118
  443. package/test/integration/generated/resiliency/srvDriven2/src/clientDefinitions.ts +0 -57
  444. package/test/integration/generated/resiliency/srvDriven2/src/index.ts +0 -11
  445. package/test/integration/generated/resiliency/srvDriven2/src/logger.ts +0 -5
  446. package/test/integration/generated/resiliency/srvDriven2/src/parameters.ts +0 -45
  447. package/test/integration/generated/resiliency/srvDriven2/src/responses.ts +0 -24
  448. package/test/integration/generated/resiliency/srvDriven2/src/serviceDrivenNewClient.ts +0 -43
  449. package/test/integration/generated/resiliency/srvDriven2/tsconfig.json +0 -25
  450. package/test/integration/generated/resiliency/srvDriven2/tspconfig.yaml +0 -15
  451. package/test/integration/generated/server/path/multiple/src/clientDefinitions.ts +0 -35
  452. package/test/integration/generated/server/path/multiple/src/index.ts +0 -11
  453. package/test/integration/generated/server/path/multiple/src/logger.ts +0 -5
  454. package/test/integration/generated/server/path/multiple/src/multipleParamInServerPathClient.ts +0 -43
  455. package/test/integration/generated/server/path/multiple/src/parameters.ts +0 -7
  456. package/test/integration/generated/server/path/multiple/src/responses.ts +0 -14
  457. package/test/integration/generated/server/path/multiple/tspconfig.yaml +0 -14
  458. package/test/integration/generated/server/path/single/src/clientDefinitions.ts +0 -19
  459. package/test/integration/generated/server/path/single/src/index.ts +0 -11
  460. package/test/integration/generated/server/path/single/src/logger.ts +0 -5
  461. package/test/integration/generated/server/path/single/src/parameters.ts +0 -6
  462. package/test/integration/generated/server/path/single/src/responses.ts +0 -9
  463. package/test/integration/generated/server/path/single/src/singleParamInServerPathClient.ts +0 -38
  464. package/test/integration/generated/server/path/single/tspconfig.yaml +0 -14
  465. package/test/integration/generated/specialWords/src/clientDefinitions.ts +0 -61
  466. package/test/integration/generated/specialWords/src/index.ts +0 -13
  467. package/test/integration/generated/specialWords/src/logger.ts +0 -5
  468. package/test/integration/generated/specialWords/src/models.ts +0 -17
  469. package/test/integration/generated/specialWords/src/outputModels.ts +0 -17
  470. package/test/integration/generated/specialWords/src/parameters.ts +0 -37
  471. package/test/integration/generated/specialWords/src/responses.ts +0 -31
  472. package/test/integration/generated/specialWords/src/specialWordsClient.ts +0 -35
  473. package/test/integration/generated/specialWords/tspconfig.yaml +0 -14
  474. package/test/integration/generated/unions/src/clientDefinitions.ts +0 -53
  475. package/test/integration/generated/unions/src/index.ts +0 -12
  476. package/test/integration/generated/unions/src/logger.ts +0 -5
  477. package/test/integration/generated/unions/src/models.ts +0 -27
  478. package/test/integration/generated/unions/src/parameters.ts +0 -34
  479. package/test/integration/generated/unions/src/responses.ts +0 -24
  480. package/test/integration/generated/unions/src/unionsClient.ts +0 -35
  481. package/test/integration/generated/unions/tspconfig.yaml +0 -14
  482. package/test/integration/internal.spec.ts +0 -76
  483. package/test/integration/lroCore.spec.ts +0 -89
  484. package/test/integration/modelInheritance.spec.ts +0 -192
  485. package/test/integration/modelPropertyNullable.spec.ts +0 -115
  486. package/test/integration/modelPropertyOptional.spec.ts +0 -362
  487. package/test/integration/modelPropertyType.spec.ts +0 -135
  488. package/test/integration/modelUsage.spec.ts +0 -47
  489. package/test/integration/projection.spec.ts +0 -102
  490. package/test/integration/resiliencyDpgCustomization.spec.ts +0 -147
  491. package/test/integration/server.spec.ts +0 -59
  492. package/test/integration/specialWords.spec.ts +0 -73
  493. package/test/integration/spreadParameters.spec.ts +0 -82
  494. package/test/integration/unions.spec.ts +0 -69
  495. package/test/tsconfig.json +0 -4
  496. package/test/unit/apiVersion.spec.ts +0 -400
  497. package/test/unit/azureCoreOperationsGenerator.spec.ts +0 -71
  498. package/test/unit/clientDefinitionGenerator.spec.ts +0 -73
  499. package/test/unit/clientFactoryGenerator.spec.ts +0 -404
  500. package/test/unit/docsGenerator.spec.ts +0 -201
  501. package/test/unit/modelsGenerator.spec.ts +0 -1529
  502. package/test/unit/parametersGenerator.spec.ts +0 -561
  503. package/test/unit/responsesGenerator.spec.ts +0 -462
  504. package/test/unit/spreadAndAlias.spec.ts +0 -200
  505. package/test/unit/util/emitUtil.ts +0 -166
  506. package/test/unit/util/testUtil.ts +0 -88
  507. package/test/util/customBearerTokenTestingPolicy.ts +0 -78
  508. package/test/util/matrix.ts +0 -48
  509. package/tsconfig.json +0 -36
  510. package/tsconfig.test.json +0 -7
  511. package/typespec-ts.build.log +0 -1
package/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ ## 0.13.1 (2023-06-02)
2
+
3
+ - [Feature] Support overload and sharedRoute in TypeSpec TS emitter. Please refer to pr [#1848](https://github.com/Azure/autorest.typescript/pull/1848).
4
+ - [Feature] Make subscriptionId optional if there are tenant level operations. Please refer to pr [#1869](https://github.com/Azure/autorest.typescript/pull/1869).
5
+ - [Feature] Respect client decorator when generate RLC client. Please refer to pr [#1876](https://github.com/Azure/autorest.typescript/pull/1876).
6
+ - [Bugfix] Improve the Modular generation with a bunch of issue fixes. Please refer to pr [#1836](https://github.com/Azure/autorest.typescript/pull/1836) and [#1861](https://github.com/Azure/autorest.typescript/pull/1861).
7
+ - [Bugfix] Fix issue in encode decorator support and doc in param tag. Please refer to pr [#1875](https://github.com/Azure/autorest.typescript/pull/1875) and [#1846](https://github.com/Azure/autorest.typescript/pull/1846).
8
+
1
9
  ## 0.13.0 (2023-05-15)
2
10
 
3
11
  - [Feature] Support typespec compiler 0.44.0 and support @encode feature, Please refer to pr [#1829](https://github.com/Azure/autorest.typescript/pull/1829).
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAW,WAAW,EAAE,MAAM,oBAAoB,CAAC;AA8C1D,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,iBAuFjD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAW,WAAW,EAAE,MAAM,oBAAoB,CAAC;AA8C1D,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,iBAwFjD"}
package/dist/src/index.js CHANGED
@@ -7,7 +7,7 @@ import { emitContentByBuilder, emitModels } from "./emitUtil.js";
7
7
  import { listClients, createSdkContext } from "@azure-tools/typespec-client-generator-core";
8
8
  import * as path from "path";
9
9
  import { buildSharedTypes } from "./modular/buildSharedTypes.js";
10
- import { Project } from "ts-morph";
10
+ import { Project, SyntaxKind } from "ts-morph";
11
11
  import { buildClientContext } from "./modular/buildClientContext.js";
12
12
  import { emitCodeModel } from "./modular/buildCodeModel.js";
13
13
  import { buildRootIndex } from "./modular/buildRootIndex.js";
@@ -76,12 +76,48 @@ export async function $onEmit(context) {
76
76
  emitPackage(project, srcPath, modularCodeModel);
77
77
  emitTsConfig(project, srcPath, modularCodeModel);
78
78
  }
79
+ removeUnusedInterfaces(project);
79
80
  for (const file of project.getSourceFiles()) {
80
81
  await emitContentByBuilder(program, () => ({ content: file.getFullText(), path: file.getFilePath() }), modularCodeModel);
81
82
  // emitFile(program, { content: hrlcClient.content, path: hrlcClient.path });
82
83
  }
83
84
  }
84
85
  }
86
+ function removeUnusedInterfaces(project) {
87
+ const allInterfaces = project
88
+ .getSourceFiles()
89
+ .flatMap((file) => file.getInterfaces());
90
+ const unusedInterfaces = allInterfaces.filter((interfaceDeclaration) => {
91
+ const references = interfaceDeclaration
92
+ .findReferencesAsNodes()
93
+ .filter((node) => {
94
+ var _a;
95
+ const kind = (_a = node.getParent()) === null || _a === void 0 ? void 0 : _a.getKind();
96
+ return (kind !== SyntaxKind.ExportSpecifier &&
97
+ kind !== SyntaxKind.InterfaceDeclaration);
98
+ });
99
+ return references.length === 0;
100
+ });
101
+ unusedInterfaces.forEach((interfaceDeclaration) => {
102
+ const interfaceName = interfaceDeclaration.getName();
103
+ // Get the index.ts file
104
+ const indexFiles = project.getSourceFiles("**/index.ts"); // Adjust the path to your index.ts file
105
+ for (const indexFile of indexFiles) {
106
+ // Get all export declarations
107
+ const exportDeclarations = indexFile.getExportDeclarations();
108
+ // Iterate over each export declaration
109
+ exportDeclarations.forEach((exportDeclaration) => {
110
+ // Find named exports that match the unused interface
111
+ const matchingExports = exportDeclaration
112
+ .getNamedExports()
113
+ .filter((ne) => ne.getName() === interfaceName);
114
+ // Remove the matching exports
115
+ matchingExports.forEach((me) => me.remove());
116
+ });
117
+ }
118
+ interfaceDeclaration.remove();
119
+ });
120
+ }
85
121
  function clearSrcFolder(srcPath, count, isMultiClient = false) {
86
122
  fsextra.emptyDirSync(srcPath);
87
123
  if (isMultiClient && count === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,8 @@ import { Schema, SchemaContext } from "@azure-tools/rlc-common";
3
3
  import { HttpOperation } from "@typespec/http";
4
4
  import { SdkContext } from "@azure-tools/typespec-client-generator-core";
5
5
  export declare function getBinaryType(usage: SchemaContext[]): "Uint8Array" | "string | Uint8Array | ReadableStream<Uint8Array> | NodeJS.ReadableStream";
6
+ export declare function isByteOrByteUnion(program: Program, dpgContext: SdkContext, type: Type): boolean;
7
+ export declare function enrichBinaryTypeInBody(schema: any): any;
6
8
  export declare function getSchemaForType(program: Program, dpgContext: SdkContext, typeInput: Type, usage?: SchemaContext[], needRef?: boolean, relevantProperty?: ModelProperty): any;
7
9
  export declare function getEffectiveModelFromType(program: Program, type: Type): Type;
8
10
  export declare function includeDerivedModel(model: Model): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"modelUtils.d.ts","sourceRoot":"","sources":["../../src/modelUtils.ts"],"names":[],"mappings":"AAGA,OAAO,EAwBL,KAAK,EACL,aAAa,EACb,IAAI,EAUJ,OAAO,EAEP,OAAO,EAGR,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAKL,MAAM,EACN,aAAa,EACd,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAKL,aAAa,EACd,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,UAAU,EAGX,MAAM,6CAA6C,CAAC;AAErD,wBAAgB,aAAa,CAAC,KAAK,EAAE,aAAa,EAAE,6FAInD;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,IAAI,EACf,KAAK,CAAC,EAAE,aAAa,EAAE,EACvB,OAAO,GAAE,OAAe,EACxB,gBAAgB,CAAC,EAAE,aAAa,OAwDjC;AACD,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,CAe5E;AACD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAQzD;AA6yBD,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,aAAa,EAAE,GAAG,MAAM,CAG3E;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAezE;AAmBD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,aAAa,GAAG,IAAI,EAC9B,UAAU,EAAE,GAAG,EACf,QAAQ,GAAE,MAAe,sBAQ1B;AAED,wBAAgB,WAAW,CACzB,OAAO,EAAE,OAAO,EAEhB,KAAK,EAAE,aAAa,GACnB,IAAI,GAAG,SAAS,CAsClB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,KAAK,CAAC,EAAE,aAAa,yCAkBtB;AAoBD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAevE;AAED;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,GACrB,MAAM,GAAG,SAAS,CAcpB;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,GAAG,OAanC"}
1
+ {"version":3,"file":"modelUtils.d.ts","sourceRoot":"","sources":["../../src/modelUtils.ts"],"names":[],"mappings":"AAGA,OAAO,EAwBL,KAAK,EACL,aAAa,EACb,IAAI,EAUJ,OAAO,EAEP,OAAO,EAGR,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAKL,MAAM,EACN,aAAa,EACd,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAKL,aAAa,EACd,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,UAAU,EAGX,MAAM,6CAA6C,CAAC;AAErD,wBAAgB,aAAa,CAAC,KAAK,EAAE,aAAa,EAAE,6FAInD;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI,WAIX;AA2BD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,GAAG,OAkBjD;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,IAAI,EACf,KAAK,CAAC,EAAE,aAAa,EAAE,EACvB,OAAO,GAAE,OAAe,EACxB,gBAAgB,CAAC,EAAE,aAAa,OAiEjC;AACD,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,CAe5E;AACD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAQzD;AAyzBD,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,aAAa,EAAE,GAAG,MAAM,CAG3E;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAezE;AAmBD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,aAAa,GAAG,IAAI,EAC9B,UAAU,EAAE,GAAG,EACf,QAAQ,GAAE,MAAe,sBAQ1B;AAED,wBAAgB,WAAW,CACzB,OAAO,EAAE,OAAO,EAEhB,KAAK,EAAE,aAAa,GACnB,IAAI,GAAG,SAAS,CAsClB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,KAAK,CAAC,EAAE,aAAa,yCAkBtB;AAoBD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAevE;AAED;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,GACrB,MAAM,GAAG,SAAS,CAcpB;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,GAAG,OAanC"}
@@ -13,6 +13,52 @@ export function getBinaryType(usage) {
13
13
  ? "Uint8Array"
14
14
  : "string | Uint8Array | ReadableStream<Uint8Array> | NodeJS.ReadableStream";
15
15
  }
16
+ export function isByteOrByteUnion(program, dpgContext, type) {
17
+ const schema = getSchemaForType(program, dpgContext, type);
18
+ return isByteType(schema) || isByteUnion(schema);
19
+ }
20
+ function isByteType(schema) {
21
+ return schema.type === "string" && schema.format === "byte";
22
+ }
23
+ function isByteUnion(schema) {
24
+ if (!Array.isArray(schema.enum)) {
25
+ return false;
26
+ }
27
+ for (const ele of schema.enum) {
28
+ if (isByteType(ele)) {
29
+ return true;
30
+ }
31
+ }
32
+ return false;
33
+ }
34
+ function refineByteType(schema) {
35
+ schema.typeName = getBinaryType([
36
+ SchemaContext.Input,
37
+ SchemaContext.Exception
38
+ ]);
39
+ schema.outputTypeName = getBinaryType([SchemaContext.Output]);
40
+ return schema;
41
+ }
42
+ export function enrichBinaryTypeInBody(schema) {
43
+ if (isByteType(schema)) {
44
+ refineByteType(schema);
45
+ }
46
+ else if (isByteUnion(schema)) {
47
+ const inputType = [];
48
+ for (const item of schema.enum) {
49
+ if (isByteType(item)) {
50
+ refineByteType(item);
51
+ }
52
+ // ignore the string type for input because we already have it in bytes union
53
+ if (getTypeName(item, [SchemaContext.Input]) !== "string") {
54
+ inputType.push(getTypeName(item, [SchemaContext.Input]));
55
+ }
56
+ }
57
+ // refine the input type
58
+ schema.typeName = inputType.join(" | ");
59
+ }
60
+ return schema;
61
+ }
16
62
  export function getSchemaForType(program, dpgContext, typeInput, usage, needRef = false, relevantProperty) {
17
63
  const type = getEffectiveModelFromType(program, typeInput);
18
64
  const builtinType = mapCadlTypeToTypeScript(program, dpgContext, type, usage);
@@ -27,8 +73,18 @@ export function getSchemaForType(program, dpgContext, typeInput, usage, needRef
27
73
  if (type.kind === "Model") {
28
74
  const schema = getSchemaForModel(program, dpgContext, type, usage, needRef);
29
75
  if (usage && usage.includes(SchemaContext.Output)) {
30
- schema.outputTypeName = `${schema.name}Output`;
31
- schema.typeName = `${schema.name}`;
76
+ if (!schema.name) {
77
+ //TODO: HANDLE ANONYMOUS
78
+ schema.outputTypeName =
79
+ schema.type === "object" ? "Record<string, any>" : "any";
80
+ schema.typeName =
81
+ schema.type === "object" ? "Record<string, unknown>" : "unknown";
82
+ schema.type = "unknown";
83
+ }
84
+ else {
85
+ schema.outputTypeName = `${schema.name}Output`;
86
+ schema.typeName = `${schema.name}`;
87
+ }
32
88
  }
33
89
  schema.usage = usage;
34
90
  return schema;
@@ -91,7 +147,10 @@ export function includeDerivedModel(model) {
91
147
  model.derivedModels.length > 0));
92
148
  }
93
149
  function getSchemaForScalar(program, dpgContext, scalar, relevantProperty) {
94
- let result = getSchemaForStdScalar(program, scalar, relevantProperty);
150
+ const encodeData = getEncode(program, scalar);
151
+ let result = encodeData
152
+ ? getSchemaForScalar(program, dpgContext, encodeData.type)
153
+ : getSchemaForStdScalar(program, scalar, relevantProperty);
95
154
  if (!result && scalar.baseScalar) {
96
155
  result = getSchemaForScalar(program, dpgContext, scalar.baseScalar);
97
156
  }
@@ -589,21 +648,26 @@ function mapCadlStdTypeToTypeScript(program, dpgContext, cadlType, usage) {
589
648
  }
590
649
  else {
591
650
  if (schema.items.typeName) {
592
- schema.typeName = schema.items.typeName
593
- .split("|")
594
- .map((typeName) => {
595
- return `${typeName}[]`;
596
- })
597
- .join(" | ");
598
- if (schema.items.outputTypeName &&
599
- usage &&
600
- usage.includes(SchemaContext.Output)) {
601
- schema.outputTypeName = schema.items.outputTypeName
651
+ if (schema.items.type === "dictionary") {
652
+ schema.typeName = `${schema.items.typeName}[]`;
653
+ }
654
+ else {
655
+ schema.typeName = schema.items.typeName
602
656
  .split("|")
603
657
  .map((typeName) => {
604
658
  return `${typeName}[]`;
605
659
  })
606
660
  .join(" | ");
661
+ if (schema.items.outputTypeName &&
662
+ usage &&
663
+ usage.includes(SchemaContext.Output)) {
664
+ schema.outputTypeName = schema.items.outputTypeName
665
+ .split("|")
666
+ .map((typeName) => {
667
+ return `${typeName}[]`;
668
+ })
669
+ .join(" | ");
670
+ }
607
671
  }
608
672
  }
609
673
  else if (schema.items.type.includes("|")) {
@@ -701,6 +765,11 @@ function getSchemaForStdScalar(program, cadlType, relevantProperty) {
701
765
  type: "number",
702
766
  format: "float"
703
767
  });
768
+ case "float":
769
+ return applyIntrinsicDecorators(program, cadlType, {
770
+ type: "number",
771
+ format: "float"
772
+ });
704
773
  case "string":
705
774
  return applyIntrinsicDecorators(program, cadlType, {
706
775
  type: "string"
@@ -1 +1 @@
1
- {"version":3,"file":"modelUtils.js","sourceRoot":"","sources":["../../src/modelUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modelUtils.js","sourceRoot":"","sources":["../../src/modelUtils.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildApiIndex.d.ts","sourceRoot":"","sources":["../../../src/modular/buildApiIndex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,QAUlE"}
1
+ {"version":3,"file":"buildApiIndex.d.ts","sourceRoot":"","sources":["../../../src/modular/buildApiIndex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,QAYlE"}
@@ -2,7 +2,7 @@ export function buildApiIndexFile(project, srcPath) {
2
2
  const apiFiles = project.getSourceFiles("**/src/api/**");
3
3
  const indexFile = project.createSourceFile(`${srcPath}/src/api/index.ts`);
4
4
  for (const file of apiFiles) {
5
- const exports = [...file.getExportedDeclarations().keys()];
5
+ const exports = [...file.getExportedDeclarations().keys()].filter((k) => !k.startsWith("_"));
6
6
  indexFile.addExportDeclaration({
7
7
  moduleSpecifier: `./${file.getBaseNameWithoutExtension()}.js`,
8
8
  namedExports: exports
@@ -1 +1 @@
1
- {"version":3,"file":"buildApiIndex.js","sourceRoot":"","sources":["../../../src/modular/buildApiIndex.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,iBAAiB,CAAC,OAAgB,EAAE,OAAe;IACjE,MAAM,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;IACzD,MAAM,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,GAAG,OAAO,mBAAmB,CAAC,CAAC;IAC1E,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE;QAC3B,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3D,SAAS,CAAC,oBAAoB,CAAC;YAC7B,eAAe,EAAE,KAAK,IAAI,CAAC,2BAA2B,EAAE,KAAK;YAC7D,YAAY,EAAE,OAAO;SACtB,CAAC,CAAC;KACJ;AACH,CAAC"}
1
+ {"version":3,"file":"buildApiIndex.js","sourceRoot":"","sources":["../../../src/modular/buildApiIndex.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,iBAAiB,CAAC,OAAgB,EAAE,OAAe;IACjE,MAAM,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;IACzD,MAAM,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,GAAG,OAAO,mBAAmB,CAAC,CAAC;IAC1E,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE;QAC3B,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAC/D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAC1B,CAAC;QACF,SAAS,CAAC,oBAAoB,CAAC;YAC7B,eAAe,EAAE,KAAK,IAAI,CAAC,2BAA2B,EAAE,KAAK;YAC7D,YAAY,EAAE,OAAO;SACtB,CAAC,CAAC;KACJ;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildClassicalClient.d.ts","sourceRoot":"","sources":["../../../src/modular/buildClassicalClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,OAAO,EAIR,MAAM,UAAU,CAAC;AAKlB,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,MAAM,QAoChB"}
1
+ {"version":3,"file":"buildClassicalClient.d.ts","sourceRoot":"","sources":["../../../src/modular/buildClassicalClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,OAAO,EAIR,MAAM,UAAU,CAAC;AAKlB,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,MAAM,QA0ChB"}
@@ -9,6 +9,10 @@ export function buildClassicalClient(client, project, srcPath) {
9
9
  const classicalClientname = `${getClientName(client)}Client`;
10
10
  const params = getClientParameters(client);
11
11
  const clientFile = project.createSourceFile(`${srcPath}/src/${classicalClientname}.ts`);
12
+ clientFile.addExportDeclaration({
13
+ namedExports: [`${classicalClientname}Options`],
14
+ moduleSpecifier: `./api/${modularClientName}Context.js`
15
+ });
12
16
  const clientClass = clientFile.addClass({
13
17
  isExported: true,
14
18
  name: `${classicalClientname}`
@@ -49,7 +53,7 @@ function importAllModels(clientFile, srcPath) {
49
53
  function importCredential(clientSourceFile) {
50
54
  clientSourceFile.addImportDeclaration({
51
55
  moduleSpecifier: "@azure/core-auth",
52
- namedImports: ["TokenCredential", "AzureKeyCredential"]
56
+ namedImports: ["TokenCredential", "KeyCredential"]
53
57
  });
54
58
  }
55
59
  function buildClientOperationGroups(client, clientClass) {
@@ -85,6 +89,7 @@ function buildClientOperationGroups(client, clientClass) {
85
89
  clientClass.addMethods(declarations.map((d) => {
86
90
  var _a;
87
91
  const method = {
92
+ docs: d.getJsDocs().map((d) => d.getStructure()),
88
93
  name: (_a = d.getName()) !== null && _a !== void 0 ? _a : "FIXME",
89
94
  kind: StructureKind.Method,
90
95
  returnType: d.getReturnType().getText(),
@@ -103,10 +108,5 @@ function buildClientOperationGroups(client, clientClass) {
103
108
  }));
104
109
  }
105
110
  }
106
- // Import ClientOptions
107
- clientClass.getSourceFile().addImportDeclaration({
108
- moduleSpecifier: `./common/interfaces.js`,
109
- namedImports: ["ClientOptions"]
110
- });
111
111
  }
112
112
  //# sourceMappingURL=buildClassicalClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildClassicalClient.js","sourceRoot":"","sources":["../../../src/modular/buildClassicalClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buildClassicalClient.js","sourceRoot":"","sources":["../../../src/modular/buildClassicalClient.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildClientContext.d.ts","sourceRoot":"","sources":["../../../src/modular/buildClientContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAIpE,OAAO,EAAE,MAAM,EAAa,MAAM,uBAAuB,CAAC;AAE1D;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE,MAAc,GACtB,UAAU,CAqEZ"}
1
+ {"version":3,"file":"buildClientContext.d.ts","sourceRoot":"","sources":["../../../src/modular/buildClientContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAIpE,OAAO,EAAE,MAAM,EAAa,MAAM,uBAAuB,CAAC;AAE1D;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE,MAAc,GACtB,UAAU,CA6EZ"}
@@ -16,9 +16,15 @@ export function buildClientContext(client, project, srcPath = "src") {
16
16
  moduleSpecifier: "../rest/index.js",
17
17
  namedExports: [`${client.name}Context`]
18
18
  });
19
- // clientContextFile.addExportAssignment({
20
- // expression: `${client.name}Context`
21
- // });
19
+ clientContextFile.addImportDeclaration({
20
+ moduleSpecifier: "@azure-rest/core-client",
21
+ namedImports: ["ClientOptions"]
22
+ });
23
+ clientContextFile.addInterface({
24
+ name: `${name}ClientOptions`,
25
+ isExported: true,
26
+ extends: ["ClientOptions"]
27
+ });
22
28
  const factoryFunction = clientContextFile.addFunction({
23
29
  docs: [description],
24
30
  name: `create${name}`,
@@ -1 +1 @@
1
- {"version":3,"file":"buildClientContext.js","sourceRoot":"","sources":["../../../src/modular/buildClientContext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buildClientContext.js","sourceRoot":"","sources":["../../../src/modular/buildClientContext.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildCodeModel.d.ts","sourceRoot":"","sources":["../../../src/modular/buildCodeModel.ts"],"names":[],"mappings":"AACA,OAAO,EA+BL,WAAW,EAOZ,MAAM,oBAAoB,CAAC;AA8B5B,OAAO,EACL,gBAAgB,EAQjB,MAAM,uBAAuB,CAAC;AAwB/B,MAAM,WAAW,cAAc;IAC7B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAsxCD,wBAAgB,aAAa,CAC3B,OAAO,EAAE,WAAW,CAAC,cAAc,CAAC,EACpC,OAAO,GAAE;IAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAA;CAAwB,GAC3D,gBAAgB,CAkClB"}
1
+ {"version":3,"file":"buildCodeModel.d.ts","sourceRoot":"","sources":["../../../src/modular/buildCodeModel.ts"],"names":[],"mappings":"AACA,OAAO,EA+BL,WAAW,EAOZ,MAAM,oBAAoB,CAAC;AAkC5B,OAAO,EACL,gBAAgB,EAQjB,MAAM,uBAAuB,CAAC;AAwB/B,MAAM,WAAW,cAAc;IAC7B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAoyCD,wBAAgB,aAAa,CAC3B,OAAO,EAAE,WAAW,CAAC,cAAc,CAAC,EACpC,OAAO,GAAE;IAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAA;CAAwB,GAC3D,gBAAgB,CAyClB"}