@azure-tools/typespec-ts 0.54.0 → 0.54.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 (522) hide show
  1. package/CHANGELOG.md +25 -10
  2. package/README.md +0 -4
  3. package/dist/src/contextManager.d.ts +5 -5
  4. package/dist/src/contextManager.d.ts.map +1 -1
  5. package/dist/src/contextManager.js +3 -3
  6. package/dist/src/contextManager.js.map +1 -1
  7. package/dist/src/framework/declaration.d.ts +1 -1
  8. package/dist/src/framework/declaration.d.ts.map +1 -1
  9. package/dist/src/framework/declaration.js +2 -4
  10. package/dist/src/framework/declaration.js.map +1 -1
  11. package/dist/src/framework/dependency.d.ts.map +1 -1
  12. package/dist/src/framework/hooks/binder.d.ts +1 -1
  13. package/dist/src/framework/hooks/binder.d.ts.map +1 -1
  14. package/dist/src/framework/hooks/binder.js +31 -40
  15. package/dist/src/framework/hooks/binder.js.map +1 -1
  16. package/dist/src/framework/hooks/sdkTypes.d.ts +1 -1
  17. package/dist/src/framework/hooks/sdkTypes.d.ts.map +1 -1
  18. package/dist/src/framework/hooks/sdkTypes.js +8 -12
  19. package/dist/src/framework/hooks/sdkTypes.js.map +1 -1
  20. package/dist/src/framework/hooks/useDependencies.d.ts.map +1 -1
  21. package/dist/src/framework/hooks/useDependencies.js +1 -1
  22. package/dist/src/framework/hooks/useDependencies.js.map +1 -1
  23. package/dist/src/framework/load-static-helpers.d.ts +1 -1
  24. package/dist/src/framework/load-static-helpers.d.ts.map +1 -1
  25. package/dist/src/framework/load-static-helpers.js +17 -31
  26. package/dist/src/framework/load-static-helpers.js.map +1 -1
  27. package/dist/src/framework/reference.d.ts.map +1 -1
  28. package/dist/src/framework/reference.js +2 -2
  29. package/dist/src/framework/reference.js.map +1 -1
  30. package/dist/src/framework/sample.js +8 -8
  31. package/dist/src/framework/sample.js.map +1 -1
  32. package/dist/src/index.d.ts +1 -1
  33. package/dist/src/index.d.ts.map +1 -1
  34. package/dist/src/index.js +103 -92
  35. package/dist/src/index.js.map +1 -1
  36. package/dist/src/lib.d.ts +1 -1
  37. package/dist/src/lib.d.ts.map +1 -1
  38. package/dist/src/lib.js +140 -140
  39. package/dist/src/lib.js.map +1 -1
  40. package/dist/src/metaTree.d.ts +1 -1
  41. package/dist/src/metaTree.d.ts.map +1 -1
  42. package/dist/src/modular/buildClassicalClient.d.ts +1 -1
  43. package/dist/src/modular/buildClassicalClient.d.ts.map +1 -1
  44. package/dist/src/modular/buildClassicalClient.js +60 -74
  45. package/dist/src/modular/buildClassicalClient.js.map +1 -1
  46. package/dist/src/modular/buildClassicalOperationGroups.d.ts +2 -2
  47. package/dist/src/modular/buildClassicalOperationGroups.d.ts.map +1 -1
  48. package/dist/src/modular/buildClassicalOperationGroups.js +8 -10
  49. package/dist/src/modular/buildClassicalOperationGroups.js.map +1 -1
  50. package/dist/src/modular/buildClientContext.d.ts +2 -2
  51. package/dist/src/modular/buildClientContext.d.ts.map +1 -1
  52. package/dist/src/modular/buildClientContext.js +31 -38
  53. package/dist/src/modular/buildClientContext.js.map +1 -1
  54. package/dist/src/modular/buildModularOptions.d.ts +1 -1
  55. package/dist/src/modular/buildModularOptions.d.ts.map +1 -1
  56. package/dist/src/modular/buildModularOptions.js +5 -6
  57. package/dist/src/modular/buildModularOptions.js.map +1 -1
  58. package/dist/src/modular/buildOperations.d.ts +3 -3
  59. package/dist/src/modular/buildOperations.d.ts.map +1 -1
  60. package/dist/src/modular/buildOperations.js +23 -25
  61. package/dist/src/modular/buildOperations.js.map +1 -1
  62. package/dist/src/modular/buildProjectFiles.d.ts +1 -1
  63. package/dist/src/modular/buildProjectFiles.d.ts.map +1 -1
  64. package/dist/src/modular/buildProjectFiles.js +8 -11
  65. package/dist/src/modular/buildProjectFiles.js.map +1 -1
  66. package/dist/src/modular/buildRestorePoller.d.ts +1 -1
  67. package/dist/src/modular/buildRestorePoller.d.ts.map +1 -1
  68. package/dist/src/modular/buildRestorePoller.js +12 -13
  69. package/dist/src/modular/buildRestorePoller.js.map +1 -1
  70. package/dist/src/modular/buildRootIndex.d.ts +2 -2
  71. package/dist/src/modular/buildRootIndex.d.ts.map +1 -1
  72. package/dist/src/modular/buildRootIndex.js +36 -50
  73. package/dist/src/modular/buildRootIndex.js.map +1 -1
  74. package/dist/src/modular/buildSubpathIndex.d.ts.map +1 -1
  75. package/dist/src/modular/buildSubpathIndex.js +9 -18
  76. package/dist/src/modular/buildSubpathIndex.js.map +1 -1
  77. package/dist/src/modular/emitLoggerFile.d.ts.map +1 -1
  78. package/dist/src/modular/emitLoggerFile.js +4 -4
  79. package/dist/src/modular/emitLoggerFile.js.map +1 -1
  80. package/dist/src/modular/emitModels.d.ts +1 -1
  81. package/dist/src/modular/emitModels.d.ts.map +1 -1
  82. package/dist/src/modular/emitModels.js +81 -113
  83. package/dist/src/modular/emitModels.js.map +1 -1
  84. package/dist/src/modular/emitModelsOptions.d.ts +1 -1
  85. package/dist/src/modular/emitModelsOptions.d.ts.map +1 -1
  86. package/dist/src/modular/emitModelsOptions.js +7 -8
  87. package/dist/src/modular/emitModelsOptions.js.map +1 -1
  88. package/dist/src/modular/emitSamples.d.ts.map +1 -1
  89. package/dist/src/modular/emitSamples.js +69 -77
  90. package/dist/src/modular/emitSamples.js.map +1 -1
  91. package/dist/src/modular/emitTests.d.ts.map +1 -1
  92. package/dist/src/modular/emitTests.js +13 -18
  93. package/dist/src/modular/emitTests.js.map +1 -1
  94. package/dist/src/modular/external-dependencies.js +54 -54
  95. package/dist/src/modular/helpers/classicalOperationHelpers.d.ts +1 -1
  96. package/dist/src/modular/helpers/classicalOperationHelpers.d.ts.map +1 -1
  97. package/dist/src/modular/helpers/classicalOperationHelpers.js +59 -68
  98. package/dist/src/modular/helpers/classicalOperationHelpers.js.map +1 -1
  99. package/dist/src/modular/helpers/clientHelpers.d.ts +2 -2
  100. package/dist/src/modular/helpers/clientHelpers.d.ts.map +1 -1
  101. package/dist/src/modular/helpers/clientHelpers.js +31 -54
  102. package/dist/src/modular/helpers/clientHelpers.js.map +1 -1
  103. package/dist/src/modular/helpers/clientOptionHelpers.d.ts.map +1 -1
  104. package/dist/src/modular/helpers/clientOptionHelpers.js +1 -1
  105. package/dist/src/modular/helpers/clientOptionHelpers.js.map +1 -1
  106. package/dist/src/modular/helpers/exampleValueHelpers.d.ts +2 -2
  107. package/dist/src/modular/helpers/exampleValueHelpers.d.ts.map +1 -1
  108. package/dist/src/modular/helpers/exampleValueHelpers.js +72 -84
  109. package/dist/src/modular/helpers/exampleValueHelpers.js.map +1 -1
  110. package/dist/src/modular/helpers/namingHelpers.d.ts +1 -1
  111. package/dist/src/modular/helpers/namingHelpers.d.ts.map +1 -1
  112. package/dist/src/modular/helpers/namingHelpers.js +7 -10
  113. package/dist/src/modular/helpers/namingHelpers.js.map +1 -1
  114. package/dist/src/modular/helpers/operationHelpers.d.ts +2 -2
  115. package/dist/src/modular/helpers/operationHelpers.d.ts.map +1 -1
  116. package/dist/src/modular/helpers/operationHelpers.js +204 -288
  117. package/dist/src/modular/helpers/operationHelpers.js.map +1 -1
  118. package/dist/src/modular/helpers/typeHelpers.d.ts +1 -1
  119. package/dist/src/modular/helpers/typeHelpers.d.ts.map +1 -1
  120. package/dist/src/modular/helpers/typeHelpers.js +4 -6
  121. package/dist/src/modular/helpers/typeHelpers.js.map +1 -1
  122. package/dist/src/modular/serialization/buildDeserializerFunction.d.ts +1 -1
  123. package/dist/src/modular/serialization/buildDeserializerFunction.d.ts.map +1 -1
  124. package/dist/src/modular/serialization/buildDeserializerFunction.js +58 -67
  125. package/dist/src/modular/serialization/buildDeserializerFunction.js.map +1 -1
  126. package/dist/src/modular/serialization/buildSerializerFunction.d.ts +1 -1
  127. package/dist/src/modular/serialization/buildSerializerFunction.d.ts.map +1 -1
  128. package/dist/src/modular/serialization/buildSerializerFunction.js +65 -75
  129. package/dist/src/modular/serialization/buildSerializerFunction.js.map +1 -1
  130. package/dist/src/modular/serialization/buildXmlSerializerFunction.d.ts +1 -1
  131. package/dist/src/modular/serialization/buildXmlSerializerFunction.d.ts.map +1 -1
  132. package/dist/src/modular/serialization/buildXmlSerializerFunction.js +73 -90
  133. package/dist/src/modular/serialization/buildXmlSerializerFunction.js.map +1 -1
  134. package/dist/src/modular/serialization/serializeUtils.d.ts.map +1 -1
  135. package/dist/src/modular/serialization/serializeUtils.js +25 -33
  136. package/dist/src/modular/serialization/serializeUtils.js.map +1 -1
  137. package/dist/src/modular/static-helpers-metadata.js +60 -60
  138. package/dist/src/modular/type-expressions/get-credential-expression.js +1 -1
  139. package/dist/src/modular/type-expressions/get-credential-expression.js.map +1 -1
  140. package/dist/src/modular/type-expressions/get-enum-expression.d.ts +1 -1
  141. package/dist/src/modular/type-expressions/get-enum-expression.d.ts.map +1 -1
  142. package/dist/src/modular/type-expressions/get-enum-expression.js +1 -2
  143. package/dist/src/modular/type-expressions/get-enum-expression.js.map +1 -1
  144. package/dist/src/modular/type-expressions/get-model-expression.d.ts.map +1 -1
  145. package/dist/src/modular/type-expressions/get-model-expression.js +10 -13
  146. package/dist/src/modular/type-expressions/get-model-expression.js.map +1 -1
  147. package/dist/src/modular/type-expressions/get-nullable-expression.d.ts +1 -1
  148. package/dist/src/modular/type-expressions/get-nullable-expression.d.ts.map +1 -1
  149. package/dist/src/modular/type-expressions/get-nullable-expression.js +2 -3
  150. package/dist/src/modular/type-expressions/get-nullable-expression.js.map +1 -1
  151. package/dist/src/modular/type-expressions/get-type-expression.d.ts.map +1 -1
  152. package/dist/src/modular/type-expressions/get-type-expression.js +5 -11
  153. package/dist/src/modular/type-expressions/get-type-expression.js.map +1 -1
  154. package/dist/src/modular/type-expressions/get-union-expression.d.ts +1 -1
  155. package/dist/src/modular/type-expressions/get-union-expression.d.ts.map +1 -1
  156. package/dist/src/modular/type-expressions/get-union-expression.js.map +1 -1
  157. package/dist/src/rlc-common/buildClient.d.ts +1 -1
  158. package/dist/src/rlc-common/buildClient.d.ts.map +1 -1
  159. package/dist/src/rlc-common/buildClient.js +67 -89
  160. package/dist/src/rlc-common/buildClient.js.map +1 -1
  161. package/dist/src/rlc-common/buildClientDefinitions.d.ts.map +1 -1
  162. package/dist/src/rlc-common/buildClientDefinitions.js +28 -45
  163. package/dist/src/rlc-common/buildClientDefinitions.js.map +1 -1
  164. package/dist/src/rlc-common/buildIndexFile.d.ts.map +1 -1
  165. package/dist/src/rlc-common/buildIndexFile.js +59 -60
  166. package/dist/src/rlc-common/buildIndexFile.js.map +1 -1
  167. package/dist/src/rlc-common/buildIsUnexpectedHelper.d.ts.map +1 -1
  168. package/dist/src/rlc-common/buildIsUnexpectedHelper.js +37 -38
  169. package/dist/src/rlc-common/buildIsUnexpectedHelper.js.map +1 -1
  170. package/dist/src/rlc-common/buildLogger.d.ts.map +1 -1
  171. package/dist/src/rlc-common/buildLogger.js +4 -5
  172. package/dist/src/rlc-common/buildLogger.js.map +1 -1
  173. package/dist/src/rlc-common/buildMethodShortcuts.d.ts.map +1 -1
  174. package/dist/src/rlc-common/buildMethodShortcuts.js +4 -4
  175. package/dist/src/rlc-common/buildMethodShortcuts.js.map +1 -1
  176. package/dist/src/rlc-common/buildObjectTypes.d.ts.map +1 -1
  177. package/dist/src/rlc-common/buildObjectTypes.js +57 -96
  178. package/dist/src/rlc-common/buildObjectTypes.js.map +1 -1
  179. package/dist/src/rlc-common/buildPaginateHelper.d.ts.map +1 -1
  180. package/dist/src/rlc-common/buildPaginateHelper.js +2 -2
  181. package/dist/src/rlc-common/buildPaginateHelper.js.map +1 -1
  182. package/dist/src/rlc-common/buildParameterTypes.d.ts.map +1 -1
  183. package/dist/src/rlc-common/buildParameterTypes.js +71 -61
  184. package/dist/src/rlc-common/buildParameterTypes.js.map +1 -1
  185. package/dist/src/rlc-common/buildPollingHelper.d.ts.map +1 -1
  186. package/dist/src/rlc-common/buildPollingHelper.js +9 -10
  187. package/dist/src/rlc-common/buildPollingHelper.js.map +1 -1
  188. package/dist/src/rlc-common/buildResponseTypes.d.ts.map +1 -1
  189. package/dist/src/rlc-common/buildResponseTypes.js +23 -27
  190. package/dist/src/rlc-common/buildResponseTypes.js.map +1 -1
  191. package/dist/src/rlc-common/buildSamples.d.ts +1 -1
  192. package/dist/src/rlc-common/buildSamples.d.ts.map +1 -1
  193. package/dist/src/rlc-common/buildSamples.js +2 -2
  194. package/dist/src/rlc-common/buildSchemaType.d.ts.map +1 -1
  195. package/dist/src/rlc-common/buildSchemaType.js +31 -13
  196. package/dist/src/rlc-common/buildSchemaType.js.map +1 -1
  197. package/dist/src/rlc-common/buildSerializeHelper.d.ts.map +1 -1
  198. package/dist/src/rlc-common/buildSerializeHelper.js +4 -4
  199. package/dist/src/rlc-common/buildSerializeHelper.js.map +1 -1
  200. package/dist/src/rlc-common/buildTopLevelIndexFile.d.ts.map +1 -1
  201. package/dist/src/rlc-common/buildTopLevelIndexFile.js +9 -13
  202. package/dist/src/rlc-common/buildTopLevelIndexFile.js.map +1 -1
  203. package/dist/src/rlc-common/helpers/apiVersionUtil.d.ts.map +1 -1
  204. package/dist/src/rlc-common/helpers/apiVersionUtil.js +6 -8
  205. package/dist/src/rlc-common/helpers/apiVersionUtil.js.map +1 -1
  206. package/dist/src/rlc-common/helpers/importsUtil.d.ts.map +1 -1
  207. package/dist/src/rlc-common/helpers/importsUtil.js +32 -37
  208. package/dist/src/rlc-common/helpers/importsUtil.js.map +1 -1
  209. package/dist/src/rlc-common/helpers/nameConstructors.d.ts.map +1 -1
  210. package/dist/src/rlc-common/helpers/nameConstructors.js +2 -4
  211. package/dist/src/rlc-common/helpers/nameConstructors.js.map +1 -1
  212. package/dist/src/rlc-common/helpers/nameUtils.d.ts.map +1 -1
  213. package/dist/src/rlc-common/helpers/nameUtils.js +17 -23
  214. package/dist/src/rlc-common/helpers/nameUtils.js.map +1 -1
  215. package/dist/src/rlc-common/helpers/operationHelpers.d.ts.map +1 -1
  216. package/dist/src/rlc-common/helpers/operationHelpers.js +16 -31
  217. package/dist/src/rlc-common/helpers/operationHelpers.js.map +1 -1
  218. package/dist/src/rlc-common/helpers/packageUtil.js +3 -6
  219. package/dist/src/rlc-common/helpers/packageUtil.js.map +1 -1
  220. package/dist/src/rlc-common/helpers/pathUtils.d.ts.map +1 -1
  221. package/dist/src/rlc-common/helpers/pathUtils.js +1 -3
  222. package/dist/src/rlc-common/helpers/pathUtils.js.map +1 -1
  223. package/dist/src/rlc-common/helpers/schemaHelpers.d.ts.map +1 -1
  224. package/dist/src/rlc-common/helpers/schemaHelpers.js +3 -7
  225. package/dist/src/rlc-common/helpers/schemaHelpers.js.map +1 -1
  226. package/dist/src/rlc-common/helpers/shortcutMethods.d.ts +1 -1
  227. package/dist/src/rlc-common/helpers/shortcutMethods.d.ts.map +1 -1
  228. package/dist/src/rlc-common/helpers/shortcutMethods.js +2 -2
  229. package/dist/src/rlc-common/helpers/shortcutMethods.js.map +1 -1
  230. package/dist/src/rlc-common/helpers/typeUtil.d.ts.map +1 -1
  231. package/dist/src/rlc-common/helpers/typeUtil.js +4 -9
  232. package/dist/src/rlc-common/helpers/typeUtil.js.map +1 -1
  233. package/dist/src/rlc-common/helpers/valueGenerationUtil.js +7 -11
  234. package/dist/src/rlc-common/helpers/valueGenerationUtil.js.map +1 -1
  235. package/dist/src/rlc-common/index.d.ts +28 -28
  236. package/dist/src/rlc-common/index.d.ts.map +1 -1
  237. package/dist/src/rlc-common/index.js +28 -28
  238. package/dist/src/rlc-common/index.js.map +1 -1
  239. package/dist/src/rlc-common/interfaces.d.ts.map +1 -1
  240. package/dist/src/rlc-common/interfaces.js.map +1 -1
  241. package/dist/src/rlc-common/metadata/buildApiExtractorConfig.d.ts.map +1 -1
  242. package/dist/src/rlc-common/metadata/buildApiExtractorConfig.js +14 -15
  243. package/dist/src/rlc-common/metadata/buildApiExtractorConfig.js.map +1 -1
  244. package/dist/src/rlc-common/metadata/buildChangelogFile.js +2 -3
  245. package/dist/src/rlc-common/metadata/buildChangelogFile.js.map +1 -1
  246. package/dist/src/rlc-common/metadata/buildESLintConfig.d.ts.map +1 -1
  247. package/dist/src/rlc-common/metadata/buildESLintConfig.js +5 -8
  248. package/dist/src/rlc-common/metadata/buildESLintConfig.js.map +1 -1
  249. package/dist/src/rlc-common/metadata/buildLicenseFile.js +1 -1
  250. package/dist/src/rlc-common/metadata/buildPackageFile.d.ts.map +1 -1
  251. package/dist/src/rlc-common/metadata/buildPackageFile.js +33 -37
  252. package/dist/src/rlc-common/metadata/buildPackageFile.js.map +1 -1
  253. package/dist/src/rlc-common/metadata/buildReadmeFile.d.ts.map +1 -1
  254. package/dist/src/rlc-common/metadata/buildReadmeFile.js +31 -39
  255. package/dist/src/rlc-common/metadata/buildReadmeFile.js.map +1 -1
  256. package/dist/src/rlc-common/metadata/buildRollupConfig.d.ts.map +1 -1
  257. package/dist/src/rlc-common/metadata/buildRollupConfig.js +4 -6
  258. package/dist/src/rlc-common/metadata/buildRollupConfig.js.map +1 -1
  259. package/dist/src/rlc-common/metadata/buildSampleEnvFile.d.ts.map +1 -1
  260. package/dist/src/rlc-common/metadata/buildSampleEnvFile.js +3 -5
  261. package/dist/src/rlc-common/metadata/buildSampleEnvFile.js.map +1 -1
  262. package/dist/src/rlc-common/metadata/buildTestConfig.js +11 -12
  263. package/dist/src/rlc-common/metadata/buildTestConfig.js.map +1 -1
  264. package/dist/src/rlc-common/metadata/buildTsConfig.d.ts.map +1 -1
  265. package/dist/src/rlc-common/metadata/buildTsConfig.js +28 -28
  266. package/dist/src/rlc-common/metadata/buildTsConfig.js.map +1 -1
  267. package/dist/src/rlc-common/metadata/buildVitestConfig.d.ts.map +1 -1
  268. package/dist/src/rlc-common/metadata/buildVitestConfig.js +3 -5
  269. package/dist/src/rlc-common/metadata/buildVitestConfig.js.map +1 -1
  270. package/dist/src/rlc-common/metadata/buildWarpConfig.d.ts.map +1 -1
  271. package/dist/src/rlc-common/metadata/buildWarpConfig.js +4 -5
  272. package/dist/src/rlc-common/metadata/buildWarpConfig.js.map +1 -1
  273. package/dist/src/rlc-common/metadata/packageJson/azurePackageCommon.d.ts +1 -1
  274. package/dist/src/rlc-common/metadata/packageJson/azurePackageCommon.d.ts.map +1 -1
  275. package/dist/src/rlc-common/metadata/packageJson/azurePackageCommon.js +14 -14
  276. package/dist/src/rlc-common/metadata/packageJson/azurePackageCommon.js.map +1 -1
  277. package/dist/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.d.ts.map +1 -1
  278. package/dist/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.js +24 -29
  279. package/dist/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.js.map +1 -1
  280. package/dist/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.d.ts.map +1 -1
  281. package/dist/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.js +15 -16
  282. package/dist/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.js.map +1 -1
  283. package/dist/src/rlc-common/metadata/packageJson/buildFlavorlessPackage.js +8 -8
  284. package/dist/src/rlc-common/metadata/packageJson/buildFlavorlessPackage.js.map +1 -1
  285. package/dist/src/rlc-common/metadata/packageJson/packageCommon.d.ts.map +1 -1
  286. package/dist/src/rlc-common/metadata/packageJson/packageCommon.js +28 -31
  287. package/dist/src/rlc-common/metadata/packageJson/packageCommon.js.map +1 -1
  288. package/dist/src/rlc-common/metadata/utils.js +1 -2
  289. package/dist/src/rlc-common/metadata/utils.js.map +1 -1
  290. package/dist/src/rlc-common/test/buildKarmaConfig.js +1 -1
  291. package/dist/src/rlc-common/test/buildRecordedClient.js +4 -5
  292. package/dist/src/rlc-common/test/buildRecordedClient.js.map +1 -1
  293. package/dist/src/rlc-common/test/buildSampleTest.d.ts.map +1 -1
  294. package/dist/src/rlc-common/test/buildSampleTest.js +3 -4
  295. package/dist/src/rlc-common/test/buildSampleTest.js.map +1 -1
  296. package/dist/src/rlc-common/test/buildSnippets.d.ts.map +1 -1
  297. package/dist/src/rlc-common/test/buildSnippets.js +7 -10
  298. package/dist/src/rlc-common/test/buildSnippets.js.map +1 -1
  299. package/dist/src/rlc-common/transformSampleGroups.d.ts.map +1 -1
  300. package/dist/src/rlc-common/transformSampleGroups.js +41 -45
  301. package/dist/src/rlc-common/transformSampleGroups.js.map +1 -1
  302. package/dist/src/testing/index.d.ts.map +1 -1
  303. package/dist/src/testing/index.js +1 -1
  304. package/dist/src/testing/index.js.map +1 -1
  305. package/dist/src/transform/transform.d.ts +1 -1
  306. package/dist/src/transform/transform.d.ts.map +1 -1
  307. package/dist/src/transform/transform.js +28 -27
  308. package/dist/src/transform/transform.js.map +1 -1
  309. package/dist/src/transform/transformApiVersionInfo.d.ts +1 -1
  310. package/dist/src/transform/transformApiVersionInfo.d.ts.map +1 -1
  311. package/dist/src/transform/transformApiVersionInfo.js +12 -14
  312. package/dist/src/transform/transformApiVersionInfo.js.map +1 -1
  313. package/dist/src/transform/transformHelperFunctionDetails.d.ts +1 -1
  314. package/dist/src/transform/transformHelperFunctionDetails.d.ts.map +1 -1
  315. package/dist/src/transform/transformHelperFunctionDetails.js +11 -14
  316. package/dist/src/transform/transformHelperFunctionDetails.js.map +1 -1
  317. package/dist/src/transform/transformParameters.d.ts +2 -2
  318. package/dist/src/transform/transformParameters.d.ts.map +1 -1
  319. package/dist/src/transform/transformParameters.js +32 -45
  320. package/dist/src/transform/transformParameters.js.map +1 -1
  321. package/dist/src/transform/transformPaths.d.ts +1 -1
  322. package/dist/src/transform/transformPaths.d.ts.map +1 -1
  323. package/dist/src/transform/transformPaths.js +19 -23
  324. package/dist/src/transform/transformPaths.js.map +1 -1
  325. package/dist/src/transform/transformResponses.d.ts +1 -1
  326. package/dist/src/transform/transformResponses.d.ts.map +1 -1
  327. package/dist/src/transform/transformResponses.js +21 -25
  328. package/dist/src/transform/transformResponses.js.map +1 -1
  329. package/dist/src/transform/transformSchemas.d.ts.map +1 -1
  330. package/dist/src/transform/transformSchemas.js +21 -32
  331. package/dist/src/transform/transformSchemas.js.map +1 -1
  332. package/dist/src/transform/transformTelemetryInfo.d.ts +1 -1
  333. package/dist/src/transform/transformTelemetryInfo.d.ts.map +1 -1
  334. package/dist/src/transform/transformTelemetryInfo.js +3 -3
  335. package/dist/src/transform/transformTelemetryInfo.js.map +1 -1
  336. package/dist/src/transform/transfromRLCOptions.d.ts +1 -1
  337. package/dist/src/transform/transfromRLCOptions.d.ts.map +1 -1
  338. package/dist/src/transform/transfromRLCOptions.js +28 -39
  339. package/dist/src/transform/transfromRLCOptions.js.map +1 -1
  340. package/dist/src/utils/clientUtils.d.ts +1 -1
  341. package/dist/src/utils/clientUtils.d.ts.map +1 -1
  342. package/dist/src/utils/clientUtils.js +15 -23
  343. package/dist/src/utils/clientUtils.js.map +1 -1
  344. package/dist/src/utils/credentialUtils.d.ts +1 -1
  345. package/dist/src/utils/credentialUtils.d.ts.map +1 -1
  346. package/dist/src/utils/credentialUtils.js +4 -5
  347. package/dist/src/utils/credentialUtils.js.map +1 -1
  348. package/dist/src/utils/crossLanguageDef.d.ts.map +1 -1
  349. package/dist/src/utils/crossLanguageDef.js +11 -15
  350. package/dist/src/utils/crossLanguageDef.js.map +1 -1
  351. package/dist/src/utils/emitUtil.d.ts +1 -1
  352. package/dist/src/utils/emitUtil.d.ts.map +1 -1
  353. package/dist/src/utils/emitUtil.js +5 -7
  354. package/dist/src/utils/emitUtil.js.map +1 -1
  355. package/dist/src/utils/fileSystemUtils.d.ts +2 -0
  356. package/dist/src/utils/fileSystemUtils.d.ts.map +1 -1
  357. package/dist/src/utils/fileSystemUtils.js +26 -7
  358. package/dist/src/utils/fileSystemUtils.js.map +1 -1
  359. package/dist/src/utils/importHelper.d.ts.map +1 -1
  360. package/dist/src/utils/importHelper.js +3 -6
  361. package/dist/src/utils/importHelper.js.map +1 -1
  362. package/dist/src/utils/interfaces.d.ts +1 -1
  363. package/dist/src/utils/interfaces.d.ts.map +1 -1
  364. package/dist/src/utils/mediaTypes.d.ts.map +1 -1
  365. package/dist/src/utils/mediaTypes.js +7 -19
  366. package/dist/src/utils/mediaTypes.js.map +1 -1
  367. package/dist/src/utils/modelUtils.d.ts +5 -5
  368. package/dist/src/utils/modelUtils.d.ts.map +1 -1
  369. package/dist/src/utils/modelUtils.js +168 -257
  370. package/dist/src/utils/modelUtils.js.map +1 -1
  371. package/dist/src/utils/namespaceUtils.d.ts.map +1 -1
  372. package/dist/src/utils/namespaceUtils.js +6 -7
  373. package/dist/src/utils/namespaceUtils.js.map +1 -1
  374. package/dist/src/utils/operationUtil.d.ts +1 -1
  375. package/dist/src/utils/operationUtil.d.ts.map +1 -1
  376. package/dist/src/utils/operationUtil.js +60 -81
  377. package/dist/src/utils/operationUtil.js.map +1 -1
  378. package/dist/src/utils/parameterUtils.d.ts +1 -1
  379. package/dist/src/utils/parameterUtils.d.ts.map +1 -1
  380. package/dist/src/utils/parameterUtils.js +26 -33
  381. package/dist/src/utils/parameterUtils.js.map +1 -1
  382. package/dist/src/utils/resolve-project-root.js +2 -2
  383. package/dist/src/utils/resolve-project-root.js.map +1 -1
  384. package/dist/tsconfig.tsbuildinfo +1 -1
  385. package/package.json +36 -43
  386. package/src/contextManager.ts +6 -9
  387. package/src/framework/declaration.ts +18 -28
  388. package/src/framework/dependency.ts +1 -2
  389. package/src/framework/hooks/binder.ts +47 -120
  390. package/src/framework/hooks/sdkTypes.ts +27 -54
  391. package/src/framework/hooks/useDependencies.ts +2 -4
  392. package/src/framework/load-static-helpers.ts +28 -51
  393. package/src/framework/reference.ts +2 -5
  394. package/src/framework/sample.ts +9 -9
  395. package/src/index.ts +145 -185
  396. package/src/lib.ts +143 -158
  397. package/src/metaTree.ts +1 -1
  398. package/src/modular/buildClassicalClient.ts +83 -160
  399. package/src/modular/buildClassicalOperationGroups.ts +14 -39
  400. package/src/modular/buildClientContext.ts +54 -83
  401. package/src/modular/buildModularOptions.ts +4 -5
  402. package/src/modular/buildOperations.ts +46 -73
  403. package/src/modular/buildProjectFiles.ts +18 -47
  404. package/src/modular/buildRestorePoller.ts +27 -46
  405. package/src/modular/buildRootIndex.ts +86 -160
  406. package/src/modular/buildSubpathIndex.ts +35 -58
  407. package/src/modular/emitLoggerFile.ts +4 -9
  408. package/src/modular/emitModels.ts +136 -266
  409. package/src/modular/emitModelsOptions.ts +10 -16
  410. package/src/modular/emitSamples.ts +92 -180
  411. package/src/modular/emitTests.ts +28 -61
  412. package/src/modular/external-dependencies.ts +54 -54
  413. package/src/modular/helpers/classicalOperationHelpers.ts +73 -126
  414. package/src/modular/helpers/clientHelpers.ts +41 -88
  415. package/src/modular/helpers/clientOptionHelpers.ts +4 -11
  416. package/src/modular/helpers/exampleValueHelpers.ts +99 -215
  417. package/src/modular/helpers/namingHelpers.ts +12 -28
  418. package/src/modular/helpers/operationHelpers.ts +430 -757
  419. package/src/modular/helpers/typeHelpers.ts +11 -22
  420. package/src/modular/serialization/buildDeserializerFunction.ts +88 -122
  421. package/src/modular/serialization/buildSerializerFunction.ts +91 -129
  422. package/src/modular/serialization/buildXmlSerializerFunction.ts +104 -183
  423. package/src/modular/serialization/serializeUtils.ts +12 -22
  424. package/src/modular/static/rollup.test.config.js +11 -14
  425. package/src/modular/static/scripts/renameOutput.mjs +2 -2
  426. package/src/modular/static-helpers-metadata.ts +60 -60
  427. package/src/modular/type-expressions/get-credential-expression.ts +1 -1
  428. package/src/modular/type-expressions/get-enum-expression.ts +5 -10
  429. package/src/modular/type-expressions/get-model-expression.ts +13 -17
  430. package/src/modular/type-expressions/get-nullable-expression.ts +4 -5
  431. package/src/modular/type-expressions/get-type-expression.ts +8 -12
  432. package/src/modular/type-expressions/get-union-expression.ts +4 -4
  433. package/src/modular/type-expressions/utils.ts +1 -1
  434. package/src/rlc-common/buildClient.ts +70 -141
  435. package/src/rlc-common/buildClientDefinitions.ts +44 -87
  436. package/src/rlc-common/buildIndexFile.ts +78 -78
  437. package/src/rlc-common/buildIsUnexpectedHelper.ts +34 -41
  438. package/src/rlc-common/buildLogger.ts +7 -7
  439. package/src/rlc-common/buildMethodShortcuts.ts +9 -21
  440. package/src/rlc-common/buildObjectTypes.ts +79 -156
  441. package/src/rlc-common/buildPaginateHelper.ts +9 -12
  442. package/src/rlc-common/buildParameterTypes.ts +116 -137
  443. package/src/rlc-common/buildPollingHelper.ts +7 -7
  444. package/src/rlc-common/buildResponseTypes.ts +34 -57
  445. package/src/rlc-common/buildSamples.ts +3 -3
  446. package/src/rlc-common/buildSchemaType.ts +37 -29
  447. package/src/rlc-common/buildSerializeHelper.ts +5 -5
  448. package/src/rlc-common/buildTopLevelIndexFile.ts +12 -19
  449. package/src/rlc-common/helpers/apiVersionUtil.ts +5 -10
  450. package/src/rlc-common/helpers/importsUtil.ts +27 -30
  451. package/src/rlc-common/helpers/nameConstructors.ts +16 -50
  452. package/src/rlc-common/helpers/nameUtils.ts +19 -42
  453. package/src/rlc-common/helpers/operationHelpers.ts +14 -31
  454. package/src/rlc-common/helpers/pathUtils.ts +2 -7
  455. package/src/rlc-common/helpers/schemaHelpers.ts +4 -15
  456. package/src/rlc-common/helpers/shortcutMethods.ts +6 -15
  457. package/src/rlc-common/helpers/typeUtil.ts +4 -11
  458. package/src/rlc-common/helpers/valueGenerationUtil.ts +16 -39
  459. package/src/rlc-common/index.ts +28 -28
  460. package/src/rlc-common/interfaces.ts +3 -11
  461. package/src/rlc-common/metadata/buildApiExtractorConfig.ts +17 -24
  462. package/src/rlc-common/metadata/buildChangelogFile.ts +1 -1
  463. package/src/rlc-common/metadata/buildESLintConfig.ts +3 -5
  464. package/src/rlc-common/metadata/buildLicenseFile.ts +1 -1
  465. package/src/rlc-common/metadata/buildPackageFile.ts +27 -35
  466. package/src/rlc-common/metadata/buildReadmeFile.ts +16 -29
  467. package/src/rlc-common/metadata/buildRollupConfig.ts +5 -8
  468. package/src/rlc-common/metadata/buildSampleEnvFile.ts +2 -3
  469. package/src/rlc-common/metadata/buildTestConfig.ts +10 -10
  470. package/src/rlc-common/metadata/buildTsConfig.ts +32 -35
  471. package/src/rlc-common/metadata/buildVitestConfig.ts +4 -10
  472. package/src/rlc-common/metadata/buildWarpConfig.ts +3 -6
  473. package/src/rlc-common/metadata/packageJson/azurePackageCommon.ts +16 -25
  474. package/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.ts +29 -50
  475. package/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.ts +20 -31
  476. package/src/rlc-common/metadata/packageJson/buildFlavorlessPackage.ts +11 -13
  477. package/src/rlc-common/metadata/packageJson/packageCommon.ts +32 -52
  478. package/src/rlc-common/test/buildKarmaConfig.ts +1 -1
  479. package/src/rlc-common/test/buildRecordedClient.ts +3 -3
  480. package/src/rlc-common/test/buildSampleTest.ts +3 -3
  481. package/src/rlc-common/test/buildSnippets.ts +6 -12
  482. package/src/rlc-common/transformSampleGroups.ts +54 -105
  483. package/src/testing/index.ts +2 -5
  484. package/src/transform/transform.ts +22 -34
  485. package/src/transform/transformApiVersionInfo.ts +17 -30
  486. package/src/transform/transformHelperFunctionDetails.ts +14 -26
  487. package/src/transform/transformParameters.ts +55 -105
  488. package/src/transform/transformPaths.ts +26 -43
  489. package/src/transform/transformResponses.ts +26 -33
  490. package/src/transform/transformSchemas.ts +15 -33
  491. package/src/transform/transformTelemetryInfo.ts +8 -14
  492. package/src/transform/transfromRLCOptions.ts +53 -116
  493. package/src/utils/clientUtils.ts +22 -41
  494. package/src/utils/credentialUtils.ts +8 -19
  495. package/src/utils/crossLanguageDef.ts +15 -34
  496. package/src/utils/emitUtil.ts +11 -17
  497. package/src/utils/fileSystemUtils.ts +30 -8
  498. package/src/utils/importHelper.ts +5 -10
  499. package/src/utils/interfaces.ts +1 -1
  500. package/src/utils/mediaTypes.ts +13 -34
  501. package/src/utils/modelUtils.ts +175 -384
  502. package/src/utils/namespaceUtils.ts +8 -24
  503. package/src/utils/operationUtil.ts +98 -190
  504. package/src/utils/parameterUtils.ts +31 -54
  505. package/src/utils/resolve-project-root.ts +3 -3
  506. package/static/static-helpers/cloudSettingHelpers.ts +4 -6
  507. package/static/static-helpers/multipartHelpers.ts +3 -3
  508. package/static/static-helpers/pagingHelpers.ts +28 -63
  509. package/static/static-helpers/pollingHelpers.ts +16 -29
  510. package/static/static-helpers/serialization/build-multi-collection.ts +1 -4
  511. package/static/static-helpers/serialization/check-prop-undefined.ts +1 -4
  512. package/static/static-helpers/serialization/get-binary-response-browser.mts +3 -1
  513. package/static/static-helpers/serialization/get-binary-response.ts +2 -2
  514. package/static/static-helpers/serialization/get-binary-stream-response-browser.mts +1 -3
  515. package/static/static-helpers/serialization/get-binary-stream-response.ts +2 -4
  516. package/static/static-helpers/serialization/serialize-record.ts +1 -1
  517. package/static/static-helpers/serialization/serializers.ts +4 -7
  518. package/static/static-helpers/serialization/xml-helpers.ts +42 -90
  519. package/static/static-helpers/simplePollerHelpers.ts +10 -19
  520. package/static/static-helpers/storageCompatResponse.ts +10 -27
  521. package/static/static-helpers/urlTemplate.ts +4 -7
  522. package/static/test-helpers/recordedClient.ts +5 -10
@@ -1,28 +1,28 @@
1
- import { StructureKind } from "ts-morph";
1
+ import { isPagedResultModel, isReadOnly, listAllServiceNamespaces, UsageFlags, } from "@azure-tools/typespec-client-generator-core";
2
+ import { StructureKind, } from "ts-morph";
2
3
  import { fixLeadingNumber, NameType, normalizeName } from "../rlc-common/index.js";
3
- import { UsageFlags, isPagedResultModel, isReadOnly, listAllServiceNamespaces } from "@azure-tools/typespec-client-generator-core";
4
4
  // import { isKey } from "@typespec/compiler";
5
- import { getExternalModel, getModelExpression, getMultipartFileTypeExpression } from "./type-expressions/get-model-expression.js";
6
- import { addDeclaration } from "../framework/declaration.js";
7
- import { buildModelDeserializer, buildPropertyDeserializer } from "./serialization/buildDeserializerFunction.js";
8
- import { buildModelSerializer, buildPropertySerializer } from "./serialization/buildSerializerFunction.js";
9
- import { buildXmlModelSerializer, buildXmlModelDeserializer, buildXmlObjectModelSerializer, buildXmlObjectModelDeserializer, hasXmlSerialization } from "./serialization/buildXmlSerializerFunction.js";
5
+ import { getExternalModel, getModelExpression, getMultipartFileTypeExpression, } from "./type-expressions/get-model-expression.js";
6
+ import { getNamespaceFullName, NoTarget } from "@typespec/compiler";
7
+ import { isMetadata, isOrExtendsHttpFile, Visibility } from "@typespec/http";
10
8
  import path from "path";
11
- import { refkey } from "../framework/refkey.js";
12
9
  import { useContext } from "../contextManager.js";
13
- import { isMetadata, isOrExtendsHttpFile, Visibility } from "@typespec/http";
14
- import { isAzureCoreErrorType } from "../utils/modelUtils.js";
15
- import { getHeaderClientOptions } from "./helpers/clientOptionHelpers.js";
16
- import { isExtensibleEnum } from "./type-expressions/get-enum-expression.js";
17
- import { getAllDiscriminatedValues, getPropertyWithOverrides, isDiscriminatedUnion } from "./serialization/serializeUtils.js";
10
+ import { addDeclaration } from "../framework/declaration.js";
11
+ import { emitQueue, flattenPropertyModelMap, getAllOperationsFromClient, pagedModelsUsedInNonPagingOps, } from "../framework/hooks/sdkTypes.js";
12
+ import { refkey } from "../framework/refkey.js";
18
13
  import { reportDiagnostic } from "../lib.js";
19
- import { getNamespaceFullName, NoTarget } from "@typespec/compiler";
20
- import { getTypeExpression, normalizeModelPropertyName } from "./type-expressions/get-type-expression.js";
21
- import { emitQueue, flattenPropertyModelMap, getAllOperationsFromClient, pagedModelsUsedInNonPagingOps } from "../framework/hooks/sdkTypes.js";
22
- import { getAllAncestors, getAllProperties, buildNonModelResponseTypeDeclaration, checkWrapNonModelReturn } from "./helpers/operationHelpers.js";
23
- import { getDirectSubtypes } from "./helpers/typeHelpers.js";
24
14
  import { getClientHierarchyMap } from "../utils/clientUtils.js";
15
+ import { isAzureCoreErrorType } from "../utils/modelUtils.js";
25
16
  import { getMethodHierarchiesMap } from "../utils/operationUtil.js";
17
+ import { getHeaderClientOptions } from "./helpers/clientOptionHelpers.js";
18
+ import { buildNonModelResponseTypeDeclaration, checkWrapNonModelReturn, getAllAncestors, getAllProperties, } from "./helpers/operationHelpers.js";
19
+ import { getDirectSubtypes } from "./helpers/typeHelpers.js";
20
+ import { buildModelDeserializer, buildPropertyDeserializer, } from "./serialization/buildDeserializerFunction.js";
21
+ import { buildModelSerializer, buildPropertySerializer, } from "./serialization/buildSerializerFunction.js";
22
+ import { buildXmlModelDeserializer, buildXmlModelSerializer, buildXmlObjectModelDeserializer, buildXmlObjectModelSerializer, hasXmlSerialization, } from "./serialization/buildXmlSerializerFunction.js";
23
+ import { getAllDiscriminatedValues, getPropertyWithOverrides, isDiscriminatedUnion, } from "./serialization/serializeUtils.js";
24
+ import { isExtensibleEnum } from "./type-expressions/get-enum-expression.js";
25
+ import { getTypeExpression, normalizeModelPropertyName, } from "./type-expressions/get-type-expression.js";
26
26
  function isGenerableType(type) {
27
27
  return (type.kind === "model" ||
28
28
  type.kind === "enum" ||
@@ -105,7 +105,6 @@ export function emitNonModelResponseTypes(context, { sourceRoot }) {
105
105
  }
106
106
  }
107
107
  function emitType(context, type, sourceFile) {
108
- var _a, _b;
109
108
  if (type.kind === "model") {
110
109
  if (isAzureCoreErrorType(context.program, type.__raw)) {
111
110
  return;
@@ -127,12 +126,12 @@ function emitType(context, type, sourceFile) {
127
126
  }
128
127
  const modelInterface = buildModelInterface(context, type);
129
128
  if (type.discriminatorProperty) {
130
- (_a = modelInterface.properties) === null || _a === void 0 ? void 0 : _a.filter((p) => {
131
- return (p.name ===
132
- normalizeModelPropertyName(context, type.discriminatorProperty));
133
- }).map((p) => {
134
- var _a, _b;
135
- (_a = p.docs) === null || _a === void 0 ? void 0 : _a.push(`The discriminator possible values: ${Object.keys((_b = type.discriminatedSubtypes) !== null && _b !== void 0 ? _b : {}).join(", ")}`);
129
+ modelInterface.properties
130
+ ?.filter((p) => {
131
+ return p.name === normalizeModelPropertyName(context, type.discriminatorProperty);
132
+ })
133
+ .map((p) => {
134
+ p.docs?.push(`The discriminator possible values: ${Object.keys(type.discriminatedSubtypes ?? {}).join(", ")}`);
136
135
  return p;
137
136
  });
138
137
  }
@@ -150,7 +149,7 @@ function emitType(context, type, sourceFile) {
150
149
  }
151
150
  const apiVersionEnumOnly = type.usage === UsageFlags.ApiVersionEnum;
152
151
  // Skip known api version enums for multi-service scenarios as users are not allowed to set api versions
153
- if (apiVersionEnumOnly && ((_b = context.rlcOptions) === null || _b === void 0 ? void 0 : _b.isMultiService)) {
152
+ if (apiVersionEnumOnly && context.rlcOptions?.isMultiService) {
154
153
  return;
155
154
  }
156
155
  const inputUsage = (type.usage & UsageFlags.Input) === UsageFlags.Input;
@@ -194,9 +193,8 @@ function emitType(context, type, sourceFile) {
194
193
  }
195
194
  }
196
195
  export function getApiVersionEnum(context) {
197
- var _a;
198
196
  // Skip api version enum for multi-service scenarios since each service may have different versions
199
- if ((_a = context.rlcOptions) === null || _a === void 0 ? void 0 : _a.isMultiService) {
197
+ if (context.rlcOptions?.isMultiService) {
200
198
  return;
201
199
  }
202
200
  const apiVersionEnum = context.sdkPackage.enums.find((e) => e.usage === UsageFlags.ApiVersionEnum);
@@ -210,29 +208,26 @@ export function getModelsPath(sourceRoot, modelNamespace = []) {
210
208
  sourceRoot,
211
209
  "models",
212
210
  ...modelNamespace.map((n) => normalizeName(n, NameType.File)),
213
- `models.ts`
211
+ `models.ts`,
214
212
  ]);
215
213
  }
216
214
  export function getModelNamespaces(context, model) {
217
- var _a, _b, _c, _d, _e, _f, _g;
218
- if (model.kind === "model" ||
219
- model.kind === "enum" ||
220
- model.kind === "union") {
221
- if (((_a = model.namespace) !== null && _a !== void 0 ? _a : "").startsWith("Azure.ResourceManager") ||
222
- ((_b = model.namespace) !== null && _b !== void 0 ? _b : "").startsWith("Azure.Core") ||
223
- ((_c = model.crossLanguageDefinitionId) !== null && _c !== void 0 ? _c : "").startsWith("TypeSpec.Rest.Resource") ||
224
- ((_d = model.crossLanguageDefinitionId) !== null && _d !== void 0 ? _d : "") === "TypeSpec.Http.File" // filter out the TypeSpec.Http.File model similar like what java does here https://github.com/microsoft/typespec/blob/main/packages/http-client-java/emitter/src/code-model-builder.ts#L2589
215
+ if (model.kind === "model" || model.kind === "enum" || model.kind === "union") {
216
+ if ((model.namespace ?? "").startsWith("Azure.ResourceManager") ||
217
+ (model.namespace ?? "").startsWith("Azure.Core") ||
218
+ (model.crossLanguageDefinitionId ?? "").startsWith("TypeSpec.Rest.Resource") ||
219
+ (model.crossLanguageDefinitionId ?? "") === "TypeSpec.Http.File" // filter out the TypeSpec.Http.File model similar like what java does here https://github.com/microsoft/typespec/blob/main/packages/http-client-java/emitter/src/code-model-builder.ts#L2589
225
220
  ) {
226
221
  return [];
227
222
  }
228
223
  const segments = model.namespace.split(".");
229
224
  // Keep full namespace segments if multiple services are present because there isn't a root namespace to trim
230
- if ((_e = context.rlcOptions) === null || _e === void 0 ? void 0 : _e.isMultiService) {
225
+ if (context.rlcOptions?.isMultiService) {
231
226
  return segments;
232
227
  }
233
- const allServiceNamespaces = (_f = context.allServiceNamespaces) !== null && _f !== void 0 ? _f : listAllServiceNamespaces(context);
228
+ const allServiceNamespaces = context.allServiceNamespaces ?? listAllServiceNamespaces(context);
234
229
  const deepestNamespace = getNamespaceFullName(allServiceNamespaces[0]);
235
- const rootNamespace = (_g = deepestNamespace.split(".")) !== null && _g !== void 0 ? _g : [];
230
+ const rootNamespace = deepestNamespace.split(".") ?? [];
236
231
  if (segments.length > rootNamespace.length) {
237
232
  while (segments[0] === rootNamespace[0]) {
238
233
  segments.shift();
@@ -297,7 +292,7 @@ function getModelAndAncestorProperties(type) {
297
292
  function addSerializationFunctions(context, typeOrProperty, sourceFile, skipDiscriminatedUnionSuffix = false) {
298
293
  const options = {
299
294
  nameOnly: false,
300
- skipDiscriminatedUnionSuffix
295
+ skipDiscriminatedUnionSuffix,
301
296
  };
302
297
  // Add JSON serializers
303
298
  const serializationFunction = typeOrProperty.kind === "property"
@@ -355,40 +350,32 @@ function addSerializationFunctions(context, typeOrProperty, sourceFile, skipDisc
355
350
  }
356
351
  }
357
352
  function buildUnionType(context, type) {
358
- var _a;
359
353
  const unionDeclaration = {
360
354
  kind: StructureKind.TypeAlias,
361
355
  name: normalizeModelName(context, type),
362
356
  isExported: true,
363
- type: type.variantTypes
364
- .map((v) => getTypeExpression(context, v))
365
- .join(" | ")
357
+ type: type.variantTypes.map((v) => getTypeExpression(context, v)).join(" | "),
366
358
  };
367
- unionDeclaration.docs = [(_a = type.doc) !== null && _a !== void 0 ? _a : `Alias for ${unionDeclaration.name}`];
359
+ unionDeclaration.docs = [type.doc ?? `Alias for ${unionDeclaration.name}`];
368
360
  return unionDeclaration;
369
361
  }
370
362
  function buildNullableType(context, type) {
371
- var _a;
372
363
  const nullableDeclaration = {
373
364
  kind: StructureKind.TypeAlias,
374
365
  name: normalizeModelName(context, type),
375
366
  isExported: true,
376
- type: getTypeExpression(context, type.type) + " | null"
367
+ type: getTypeExpression(context, type.type) + " | null",
377
368
  };
378
- nullableDeclaration.docs = [
379
- (_a = type.doc) !== null && _a !== void 0 ? _a : `Alias for ${nullableDeclaration.name}`
380
- ];
369
+ nullableDeclaration.docs = [type.doc ?? `Alias for ${nullableDeclaration.name}`];
381
370
  return nullableDeclaration;
382
371
  }
383
- export function buildEnumTypes(context, type, reportMemberNameDiagnostic = false // if reportMemberNameDiagnostic is true, it will report diagnostic for enum member name
384
- ) {
385
- var _a;
372
+ export function buildEnumTypes(context, type, reportMemberNameDiagnostic = false) {
386
373
  const rawMembers = type.values.map((value) => emitEnumMember(context, value, reportMemberNameDiagnostic));
387
374
  const enumDeclaration = {
388
375
  kind: StructureKind.Enum,
389
376
  name: `Known${normalizeModelName(context, type)}`,
390
377
  isExported: true,
391
- members: deduplicateEnumMemberNames(rawMembers)
378
+ members: deduplicateEnumMemberNames(rawMembers),
392
379
  };
393
380
  const enumAsUnion = {
394
381
  kind: StructureKind.TypeAlias,
@@ -396,12 +383,12 @@ export function buildEnumTypes(context, type, reportMemberNameDiagnostic = false
396
383
  isExported: true,
397
384
  type: !isExtensibleEnum(context, type)
398
385
  ? type.values.map((v) => getTypeExpression(context, v)).join(" | ")
399
- : getTypeExpression(context, type.valueType)
386
+ : getTypeExpression(context, type.valueType),
400
387
  };
401
388
  const docs = type.doc ? type.doc : "Type of " + enumAsUnion.name;
402
389
  enumAsUnion.docs =
403
390
  isExtensibleEnum(context, type) && type.doc
404
- ? [(_a = getExtensibleEnumDescription(context, type)) !== null && _a !== void 0 ? _a : docs]
391
+ ? [getExtensibleEnumDescription(context, type) ?? docs]
405
392
  : [docs];
406
393
  enumDeclaration.docs = type.doc
407
394
  ? [type.doc]
@@ -423,7 +410,7 @@ function getExtensibleEnumDescription(context, model) {
423
410
  `${model.doc} \\`,
424
411
  enumLink,
425
412
  `### Known values supported by the service`,
426
- valueDescriptions
413
+ valueDescriptions,
427
414
  ].join(" \n");
428
415
  }
429
416
  /**
@@ -433,30 +420,26 @@ function getExtensibleEnumDescription(context, model) {
433
420
  * to the same identifier.
434
421
  */
435
422
  function deduplicateEnumMemberNames(members) {
436
- var _a;
437
423
  const nameCount = new Map();
438
424
  for (const member of members) {
439
425
  const name = member.name;
440
- nameCount.set(name, ((_a = nameCount.get(name)) !== null && _a !== void 0 ? _a : 0) + 1);
426
+ nameCount.set(name, (nameCount.get(name) ?? 0) + 1);
441
427
  }
442
428
  const nameCurrentIndex = new Map();
443
429
  return members.map((member) => {
444
- var _a, _b;
445
430
  const name = member.name;
446
- if (((_a = nameCount.get(name)) !== null && _a !== void 0 ? _a : 0) > 1) {
447
- const index = ((_b = nameCurrentIndex.get(name)) !== null && _b !== void 0 ? _b : 0) + 1;
431
+ if ((nameCount.get(name) ?? 0) > 1) {
432
+ const index = (nameCurrentIndex.get(name) ?? 0) + 1;
448
433
  nameCurrentIndex.set(name, index);
449
434
  return { ...member, name: `${name}_${index}` };
450
435
  }
451
436
  return member;
452
437
  });
453
438
  }
454
- function emitEnumMember(context, member, reportMemberNameDiagnostic = false // if reportMemberNameDiagnostic is true, it will report diagnostic for enum member name
455
- ) {
456
- var _a;
439
+ function emitEnumMember(context, member, reportMemberNameDiagnostic = false) {
457
440
  const shouldNormalizeName = !member.name.startsWith("$DO_NOT_NORMALIZE$");
458
441
  const enumTypeName = normalizeName(member.enumType.name, NameType.Interface, true);
459
- let normalizedMemberName = ((_a = context.rlcOptions) === null || _a === void 0 ? void 0 : _a.ignoreEnumMemberNameNormalize)
442
+ let normalizedMemberName = context.rlcOptions?.ignoreEnumMemberNameNormalize
460
443
  ? fixLeadingNumber(member.name, NameType.EnumMemberName) // need to fix the leading number also for enum member
461
444
  : normalizeName(member.name, NameType.EnumMemberName, true);
462
445
  // If the member name starts with _ due to a leading digit (not because the original has _),
@@ -464,8 +447,7 @@ function emitEnumMember(context, member, reportMemberNameDiagnostic = false // i
464
447
  if (shouldNormalizeName &&
465
448
  normalizedMemberName.toLowerCase().startsWith("_") &&
466
449
  !member.name.toLowerCase().startsWith("_")) {
467
- const isApiVersionEnum = (member.enumType.usage & UsageFlags.ApiVersionEnum) ===
468
- UsageFlags.ApiVersionEnum;
450
+ const isApiVersionEnum = (member.enumType.usage & UsageFlags.ApiVersionEnum) === UsageFlags.ApiVersionEnum;
469
451
  const prefix = isApiVersionEnum ? "V" : enumTypeName;
470
452
  normalizedMemberName = prefix + normalizedMemberName.slice(1);
471
453
  if (reportMemberNameDiagnostic) {
@@ -474,16 +456,16 @@ function emitEnumMember(context, member, reportMemberNameDiagnostic = false // i
474
456
  format: {
475
457
  memberName: member.name,
476
458
  normalizedName: normalizedMemberName,
477
- enumTypeName
459
+ enumTypeName,
478
460
  },
479
- target: NoTarget
461
+ target: NoTarget,
480
462
  });
481
463
  }
482
464
  }
483
465
  const memberStructure = {
484
466
  kind: StructureKind.EnumMember,
485
467
  name: normalizedMemberName,
486
- value: member.value
468
+ value: member.value,
487
469
  };
488
470
  if (member.doc) {
489
471
  memberStructure.docs = [member.doc];
@@ -495,7 +477,6 @@ function emitEnumMember(context, member, reportMemberNameDiagnostic = false // i
495
477
  return memberStructure;
496
478
  }
497
479
  function buildModelInterface(context, type) {
498
- var _a, _b;
499
480
  const flattenPropertySet = new Set();
500
481
  // For non-input models (output-only, exception, etc.), filter out metadata
501
482
  // properties (@header, @query, @path) since they are deserialized separately.
@@ -507,7 +488,6 @@ function buildModelInterface(context, type) {
507
488
  isExported: true,
508
489
  properties: type.properties
509
490
  .filter((p) => {
510
- var _a, _b;
511
491
  if (!hasInputUsage && p.__raw && isMetadata(context.program, p.__raw)) {
512
492
  return false;
513
493
  }
@@ -518,8 +498,8 @@ function buildModelInterface(context, type) {
518
498
  if (context.arm &&
519
499
  p.__raw &&
520
500
  isMetadata(context.program, p.__raw) &&
521
- ((_a = p.visibility) === null || _a === void 0 ? void 0 : _a.length) === 1 &&
522
- ((_b = p.visibility) === null || _b === void 0 ? void 0 : _b.includes(Visibility.Read))) {
501
+ p.visibility?.length === 1 &&
502
+ p.visibility?.includes(Visibility.Read)) {
523
503
  return false;
524
504
  }
525
505
  // filter out the flatten property to be processed later
@@ -531,16 +511,16 @@ function buildModelInterface(context, type) {
531
511
  })
532
512
  .map((p) => {
533
513
  return buildModelProperty(context, p, type);
534
- })
514
+ }),
535
515
  };
536
516
  for (const flatten of flattenPropertySet.keys()) {
537
- const conflictMap = (_a = useContext("sdkTypes").flattenProperties.get(flatten)) === null || _a === void 0 ? void 0 : _a.conflictMap;
517
+ const conflictMap = useContext("sdkTypes").flattenProperties.get(flatten)?.conflictMap;
538
518
  const allProperties = getAllProperties(context, flatten.type, getAllAncestors(flatten.type));
539
519
  interfaceStructure.properties.push(...allProperties.map((p) => {
540
520
  // when the flattened property is optional, all its child properties should be optional too
541
521
  const property = getPropertyWithOverrides(p, {
542
522
  allOptional: flatten.optional,
543
- propertyRenames: conflictMap
523
+ propertyRenames: conflictMap,
544
524
  });
545
525
  return buildModelProperty(context, property, type);
546
526
  }));
@@ -555,31 +535,28 @@ function buildModelInterface(context, type) {
555
535
  kind: StructureKind.PropertySignature,
556
536
  name: opt.propertyName,
557
537
  type: "string",
558
- hasQuestionToken: true
538
+ hasQuestionToken: true,
559
539
  });
560
540
  }
561
541
  }
562
542
  }
563
543
  if (type.baseModel) {
564
544
  const parentReference = getModelExpression(context, type.baseModel, {
565
- skipPolymorphicUnion: true
545
+ skipPolymorphicUnion: true,
566
546
  });
567
547
  interfaceStructure.extends = [parentReference];
568
548
  }
569
549
  if (type.additionalProperties) {
570
550
  addExtendedDictInfo(context, type, interfaceStructure);
571
551
  }
572
- interfaceStructure.docs = [
573
- (_b = type.doc) !== null && _b !== void 0 ? _b : "model interface " + interfaceStructure.name
574
- ];
552
+ interfaceStructure.docs = [type.doc ?? "model interface " + interfaceStructure.name];
575
553
  return interfaceStructure;
576
554
  }
577
555
  function addExtendedDictInfo(context, model, modelInterface) {
578
- var _a;
579
556
  const additionalPropertiesType = model.additionalProperties
580
557
  ? getTypeExpression(context, model.additionalProperties)
581
558
  : undefined;
582
- if ((_a = context.rlcOptions) === null || _a === void 0 ? void 0 : _a.compatibilityMode) {
559
+ if (context.rlcOptions?.compatibilityMode) {
583
560
  const ancestors = getAllAncestors(model);
584
561
  const properties = getAllProperties(context, model, ancestors);
585
562
  let anyType = true;
@@ -594,7 +571,7 @@ function addExtendedDictInfo(context, model, modelInterface) {
594
571
  else {
595
572
  // case 3: if additionalProperties is defined and model.properties is not empty, we should check if all properties are compatible with additionalProperties type
596
573
  anyType = !properties.every((p) => {
597
- return additionalPropertiesType === null || additionalPropertiesType === void 0 ? void 0 : additionalPropertiesType.includes(getTypeExpression(context, p.type));
574
+ return additionalPropertiesType?.includes(getTypeExpression(context, p.type));
598
575
  });
599
576
  }
600
577
  if (!modelInterface.extends) {
@@ -612,9 +589,9 @@ function addExtendedDictInfo(context, model, modelInterface) {
612
589
  reportDiagnostic(context.program, {
613
590
  code: "property-name-conflict",
614
591
  format: {
615
- propertyName: "additionalProperties"
592
+ propertyName: "additionalProperties",
616
593
  },
617
- target: NoTarget
594
+ target: NoTarget,
618
595
  });
619
596
  }
620
597
  if (!modelInterface.properties) {
@@ -625,7 +602,7 @@ function addExtendedDictInfo(context, model, modelInterface) {
625
602
  docs: ["Additional properties"],
626
603
  hasQuestionToken: true,
627
604
  isReadonly: false,
628
- type: `Record<string, ${additionalPropertiesType !== null && additionalPropertiesType !== void 0 ? additionalPropertiesType : "any"}>`
605
+ type: `Record<string, ${additionalPropertiesType ?? "any"}>`,
629
606
  });
630
607
  }
631
608
  }
@@ -636,7 +613,6 @@ export function getAdditionalPropertiesName(context, model) {
636
613
  return nameConflict ? "additionalPropertiesBag" : "additionalProperties";
637
614
  }
638
615
  export function normalizeModelName(context, type, nameType = NameType.Interface, skipPolymorphicUnionSuffix = false, rawModelName) {
639
- var _a;
640
616
  if (type.kind === "array") {
641
617
  if (rawModelName) {
642
618
  return `${normalizeModelName(context, type.valueType, nameType, skipPolymorphicUnionSuffix, rawModelName)}Array`;
@@ -662,11 +638,8 @@ export function normalizeModelName(context, type, nameType = NameType.Interface,
662
638
  unionSuffix = "Union";
663
639
  }
664
640
  }
665
- const namespacePrefix = ((_a = context.rlcOptions) === null || _a === void 0 ? void 0 : _a.enableModelNamespace)
666
- ? segments.join("")
667
- : "";
668
- const internalModelPrefix = (isPagedResultModel(context, type) &&
669
- !pagedModelsUsedInNonPagingOps.has(type)) ||
641
+ const namespacePrefix = context.rlcOptions?.enableModelNamespace ? segments.join("") : "";
642
+ const internalModelPrefix = (isPagedResultModel(context, type) && !pagedModelsUsedInNonPagingOps.has(type)) ||
670
643
  type.isGeneratedName
671
644
  ? "_"
672
645
  : "";
@@ -689,26 +662,25 @@ function buildModelPolymorphicType(context, type) {
689
662
  (p.usage & UsageFlags.Input) === UsageFlags.Input));
690
663
  })
691
664
  .map((t) => getTypeExpression(context, t))
692
- .join(" | ")
665
+ .join(" | "),
693
666
  };
694
667
  typeDeclaration.docs = [`Alias for ${typeDeclaration.name}`];
695
668
  typeDeclaration.type += ` | ${getModelExpression(context, type, {
696
- skipPolymorphicUnion: true
669
+ skipPolymorphicUnion: true,
697
670
  })}`;
698
671
  return typeDeclaration;
699
672
  }
700
673
  function buildModelProperty(context, property, model) {
701
- var _a, _b;
702
674
  const normalizedPropName = normalizeModelPropertyName(context, property);
703
- if (!((_a = context.rlcOptions) === null || _a === void 0 ? void 0 : _a.ignorePropertyNameNormalize) &&
675
+ if (!context.rlcOptions?.ignorePropertyNameNormalize &&
704
676
  normalizedPropName !== `"${property.name}"`) {
705
677
  reportDiagnostic(context.program, {
706
678
  code: "property-name-normalized",
707
679
  format: {
708
680
  propertyName: property.name,
709
- normalizedName: normalizedPropName
681
+ normalizedName: normalizedPropName,
710
682
  },
711
- target: NoTarget
683
+ target: NoTarget,
712
684
  });
713
685
  }
714
686
  let typeExpression;
@@ -717,17 +689,14 @@ function buildModelProperty(context, property, model) {
717
689
  // 1. it is discriminated union
718
690
  // 2. it has other discriminator values except itself
719
691
  if (isDiscriminatedUnion(model) && allDiscriminatorValues.length > 1) {
720
- typeExpression = allDiscriminatorValues
721
- .map((value) => `"${value}"`)
722
- .join(" | ");
692
+ typeExpression = allDiscriminatorValues.map((value) => `"${value}"`).join(" | ");
723
693
  }
724
- else if (property.kind === "property" &&
725
- ((_b = property.serializationOptions.multipart) === null || _b === void 0 ? void 0 : _b.isFilePart)) {
694
+ else if (property.kind === "property" && property.serializationOptions.multipart?.isFilePart) {
726
695
  typeExpression = getMultipartFileTypeExpression(context, property);
727
696
  }
728
697
  else {
729
698
  typeExpression = getTypeExpression(context, property.type, {
730
- isOptional: property.optional
699
+ isOptional: property.optional,
731
700
  });
732
701
  }
733
702
  const propertyStructure = {
@@ -735,7 +704,7 @@ function buildModelProperty(context, property, model) {
735
704
  name: normalizedPropName,
736
705
  type: typeExpression,
737
706
  hasQuestionToken: property.optional,
738
- isReadonly: isReadOnly(property)
707
+ isReadonly: isReadOnly(property),
739
708
  };
740
709
  if (property.doc) {
741
710
  propertyStructure.docs = [property.doc];
@@ -784,17 +753,16 @@ function visitClientMethod(context, method) {
784
753
  reportDiagnostic(context.program, {
785
754
  code: "unknown-sdk-method-kind",
786
755
  format: {
787
- methodKind: method.kind
756
+ methodKind: method.kind,
788
757
  },
789
- target: NoTarget
758
+ target: NoTarget,
790
759
  });
791
760
  return; // Skip processing this method but continue with others
792
761
  }
793
762
  }
794
763
  function visitOperation(context, operation) {
795
- var _a;
796
764
  // Visit the request
797
- visitType(context, (_a = operation.bodyParam) === null || _a === void 0 ? void 0 : _a.type);
765
+ visitType(context, operation.bodyParam?.type);
798
766
  // Visit the response
799
767
  operation.exceptions.forEach((exception) => visitType(context, exception.type));
800
768
  operation.parameters.forEach((parameter) => {
@@ -1 +1 @@
1
- {"version":3,"file":"emitModels.js","sourceRoot":"","sources":["../../../src/modular/emitModels.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"emitModels.js","sourceRoot":"","sources":["../../../src/modular/emitModels.ts"],"names":[],"mappings":"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"}