@ir-kit/openapi-kotlin 2.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (296) hide show
  1. package/README.md +13 -13
  2. package/dist/ast/index.d.ts +168 -0
  3. package/dist/ast/index.d.ts.map +1 -0
  4. package/dist/ast/index.js +194 -0
  5. package/dist/ast/index.js.map +1 -0
  6. package/dist/generate.d.ts.map +1 -1
  7. package/dist/generate.js +7 -7
  8. package/dist/generate.js.map +1 -1
  9. package/dist/index.d.ts +1 -1
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +1 -1
  12. package/dist/index.js.map +1 -1
  13. package/dist/ir/identifiers.d.ts +7 -0
  14. package/dist/ir/identifiers.d.ts.map +1 -1
  15. package/dist/ir/identifiers.js +92 -3
  16. package/dist/ir/identifiers.js.map +1 -1
  17. package/dist/ir/impl/body.d.ts +4 -3
  18. package/dist/ir/impl/body.d.ts.map +1 -1
  19. package/dist/ir/impl/body.js +11 -8
  20. package/dist/ir/impl/body.js.map +1 -1
  21. package/dist/ir/impl/decode.d.ts +3 -2
  22. package/dist/ir/impl/decode.d.ts.map +1 -1
  23. package/dist/ir/impl/decode.js +16 -16
  24. package/dist/ir/impl/decode.js.map +1 -1
  25. package/dist/ir/impl/headers.d.ts +1 -1
  26. package/dist/ir/impl/headers.d.ts.map +1 -1
  27. package/dist/ir/impl/headers.js +3 -3
  28. package/dist/ir/impl/headers.js.map +1 -1
  29. package/dist/ir/impl/index.d.ts +5 -2
  30. package/dist/ir/impl/index.d.ts.map +1 -1
  31. package/dist/ir/impl/index.js +6 -7
  32. package/dist/ir/impl/index.js.map +1 -1
  33. package/dist/ir/impl/request.d.ts +6 -6
  34. package/dist/ir/impl/request.d.ts.map +1 -1
  35. package/dist/ir/impl/request.js +18 -8
  36. package/dist/ir/impl/request.js.map +1 -1
  37. package/dist/ir/impl/serializer.d.ts +4 -2
  38. package/dist/ir/impl/serializer.d.ts.map +1 -1
  39. package/dist/ir/impl/serializer.js +41 -60
  40. package/dist/ir/impl/serializer.js.map +1 -1
  41. package/dist/ir/impl/url.d.ts +1 -1
  42. package/dist/ir/impl/url.d.ts.map +1 -1
  43. package/dist/ir/impl/url.js +4 -4
  44. package/dist/ir/impl/url.js.map +1 -1
  45. package/dist/ir/index.d.ts +1 -1
  46. package/dist/ir/index.d.ts.map +1 -1
  47. package/dist/ir/index.js +1 -1
  48. package/dist/ir/index.js.map +1 -1
  49. package/dist/ir/operation/body.d.ts +1 -1
  50. package/dist/ir/operation/body.d.ts.map +1 -1
  51. package/dist/ir/operation/body.js +3 -3
  52. package/dist/ir/operation/body.js.map +1 -1
  53. package/dist/ir/operation/params.d.ts +1 -1
  54. package/dist/ir/operation/params.d.ts.map +1 -1
  55. package/dist/ir/operation/params.js +3 -3
  56. package/dist/ir/operation/params.js.map +1 -1
  57. package/dist/ir/operation/response.d.ts +3 -1
  58. package/dist/ir/operation/response.d.ts.map +1 -1
  59. package/dist/ir/operation/response.js +3 -4
  60. package/dist/ir/operation/response.js.map +1 -1
  61. package/dist/ir/operation/signature.d.ts +4 -2
  62. package/dist/ir/operation/signature.d.ts.map +1 -1
  63. package/dist/ir/operation/signature.js +5 -4
  64. package/dist/ir/operation/signature.js.map +1 -1
  65. package/dist/ir/operations.d.ts +7 -1
  66. package/dist/ir/operations.d.ts.map +1 -1
  67. package/dist/ir/operations.js +13 -7
  68. package/dist/ir/operations.js.map +1 -1
  69. package/dist/ir/runtime/index.d.ts +1 -1
  70. package/dist/ir/runtime/index.d.ts.map +1 -1
  71. package/dist/ir/runtime/index.js +1 -1
  72. package/dist/ir/runtime/index.js.map +1 -1
  73. package/dist/ir/runtime/templates.d.ts +1 -21
  74. package/dist/ir/runtime/templates.d.ts.map +1 -1
  75. package/dist/ir/runtime/templates.js +24 -428
  76. package/dist/ir/runtime/templates.js.map +1 -1
  77. package/dist/ir/schema.d.ts +3 -2
  78. package/dist/ir/schema.d.ts.map +1 -1
  79. package/dist/ir/schema.js +24 -11
  80. package/dist/ir/schema.js.map +1 -1
  81. package/dist/ir/type/context.d.ts +1 -1
  82. package/dist/ir/type/context.d.ts.map +1 -1
  83. package/dist/ir/type/index.d.ts +5 -3
  84. package/dist/ir/type/index.d.ts.map +1 -1
  85. package/dist/ir/type/index.js +12 -8
  86. package/dist/ir/type/index.js.map +1 -1
  87. package/dist/ir/type/primitive.d.ts +1 -1
  88. package/dist/ir/type/primitive.d.ts.map +1 -1
  89. package/dist/ir/type/primitive.js +1 -1
  90. package/dist/ir/type/primitive.js.map +1 -1
  91. package/dist/ir/type-ops.d.ts +2 -2
  92. package/dist/ir/type-ops.d.ts.map +1 -1
  93. package/dist/ir/type-ops.js +13 -17
  94. package/dist/ir/type-ops.js.map +1 -1
  95. package/dist/kt-compiler/index.d.ts +3 -6
  96. package/dist/kt-compiler/index.d.ts.map +1 -1
  97. package/dist/kt-compiler/index.js +7 -22
  98. package/dist/kt-compiler/index.js.map +1 -1
  99. package/dist/project/build.d.ts +1 -1
  100. package/dist/project/build.d.ts.map +1 -1
  101. package/dist/project/build.js +6 -8
  102. package/dist/project/build.js.map +1 -1
  103. package/dist/project/imports.d.ts +12 -12
  104. package/dist/project/imports.d.ts.map +1 -1
  105. package/dist/project/imports.js +60 -138
  106. package/dist/project/imports.js.map +1 -1
  107. package/dist/project/layout.d.ts +1 -1
  108. package/dist/project/layout.d.ts.map +1 -1
  109. package/dist/project/layout.js +1 -3
  110. package/dist/project/layout.js.map +1 -1
  111. package/package.json +11 -9
  112. package/runtime/APIClient.kt +140 -0
  113. package/runtime/APIError.kt +42 -0
  114. package/runtime/APIInterceptors.kt +14 -0
  115. package/runtime/APIKeyLocation.kt +7 -0
  116. package/runtime/Auth.kt +86 -0
  117. package/runtime/MultipartFormBody.kt +41 -0
  118. package/runtime/QueryStyle.kt +12 -0
  119. package/runtime/RequestOptions.kt +29 -0
  120. package/runtime/URLEncoding.kt +45 -0
  121. package/dist/kt-compiler/decl/class.d.ts +0 -6
  122. package/dist/kt-compiler/decl/class.d.ts.map +0 -1
  123. package/dist/kt-compiler/decl/class.js +0 -38
  124. package/dist/kt-compiler/decl/class.js.map +0 -1
  125. package/dist/kt-compiler/decl/dataClass.d.ts +0 -3
  126. package/dist/kt-compiler/decl/dataClass.d.ts.map +0 -1
  127. package/dist/kt-compiler/decl/dataClass.js +0 -18
  128. package/dist/kt-compiler/decl/dataClass.js.map +0 -1
  129. package/dist/kt-compiler/decl/enum.d.ts +0 -3
  130. package/dist/kt-compiler/decl/enum.d.ts.map +0 -1
  131. package/dist/kt-compiler/decl/enum.js +0 -32
  132. package/dist/kt-compiler/decl/enum.js.map +0 -1
  133. package/dist/kt-compiler/decl/fun.d.ts +0 -11
  134. package/dist/kt-compiler/decl/fun.d.ts.map +0 -1
  135. package/dist/kt-compiler/decl/fun.js +0 -69
  136. package/dist/kt-compiler/decl/fun.js.map +0 -1
  137. package/dist/kt-compiler/decl/index.d.ts +0 -13
  138. package/dist/kt-compiler/decl/index.d.ts.map +0 -1
  139. package/dist/kt-compiler/decl/index.js +0 -39
  140. package/dist/kt-compiler/decl/index.js.map +0 -1
  141. package/dist/kt-compiler/decl/interface.d.ts +0 -3
  142. package/dist/kt-compiler/decl/interface.d.ts.map +0 -1
  143. package/dist/kt-compiler/decl/interface.js +0 -15
  144. package/dist/kt-compiler/decl/interface.js.map +0 -1
  145. package/dist/kt-compiler/decl/object.d.ts +0 -3
  146. package/dist/kt-compiler/decl/object.d.ts.map +0 -1
  147. package/dist/kt-compiler/decl/object.js +0 -19
  148. package/dist/kt-compiler/decl/object.js.map +0 -1
  149. package/dist/kt-compiler/decl/prop.d.ts +0 -20
  150. package/dist/kt-compiler/decl/prop.d.ts.map +0 -1
  151. package/dist/kt-compiler/decl/prop.js +0 -42
  152. package/dist/kt-compiler/decl/prop.js.map +0 -1
  153. package/dist/kt-compiler/decl/sealedClass.d.ts +0 -3
  154. package/dist/kt-compiler/decl/sealedClass.d.ts.map +0 -1
  155. package/dist/kt-compiler/decl/sealedClass.js +0 -32
  156. package/dist/kt-compiler/decl/sealedClass.js.map +0 -1
  157. package/dist/kt-compiler/decl/topLevel.d.ts +0 -3
  158. package/dist/kt-compiler/decl/topLevel.d.ts.map +0 -1
  159. package/dist/kt-compiler/decl/topLevel.js +0 -5
  160. package/dist/kt-compiler/decl/topLevel.js.map +0 -1
  161. package/dist/kt-compiler/decl/typeAlias.d.ts +0 -3
  162. package/dist/kt-compiler/decl/typeAlias.d.ts.map +0 -1
  163. package/dist/kt-compiler/decl/typeAlias.js +0 -6
  164. package/dist/kt-compiler/decl/typeAlias.js.map +0 -1
  165. package/dist/kt-compiler/expr.d.ts +0 -4
  166. package/dist/kt-compiler/expr.d.ts.map +0 -1
  167. package/dist/kt-compiler/expr.js +0 -123
  168. package/dist/kt-compiler/expr.js.map +0 -1
  169. package/dist/kt-compiler/format.d.ts +0 -20
  170. package/dist/kt-compiler/format.d.ts.map +0 -1
  171. package/dist/kt-compiler/format.js +0 -27
  172. package/dist/kt-compiler/format.js.map +0 -1
  173. package/dist/kt-compiler/stmt.d.ts +0 -4
  174. package/dist/kt-compiler/stmt.d.ts.map +0 -1
  175. package/dist/kt-compiler/stmt.js +0 -72
  176. package/dist/kt-compiler/stmt.js.map +0 -1
  177. package/dist/kt-compiler/type.d.ts +0 -3
  178. package/dist/kt-compiler/type.d.ts.map +0 -1
  179. package/dist/kt-compiler/type.js +0 -28
  180. package/dist/kt-compiler/type.js.map +0 -1
  181. package/dist/kt-dsl/decl/class.d.ts +0 -50
  182. package/dist/kt-dsl/decl/class.d.ts.map +0 -1
  183. package/dist/kt-dsl/decl/class.js +0 -33
  184. package/dist/kt-dsl/decl/class.js.map +0 -1
  185. package/dist/kt-dsl/decl/dataClass.d.ts +0 -36
  186. package/dist/kt-dsl/decl/dataClass.d.ts.map +0 -1
  187. package/dist/kt-dsl/decl/dataClass.js +0 -25
  188. package/dist/kt-dsl/decl/dataClass.js.map +0 -1
  189. package/dist/kt-dsl/decl/enum.d.ts +0 -60
  190. package/dist/kt-dsl/decl/enum.d.ts.map +0 -1
  191. package/dist/kt-dsl/decl/enum.js +0 -38
  192. package/dist/kt-dsl/decl/enum.js.map +0 -1
  193. package/dist/kt-dsl/decl/index.d.ts +0 -11
  194. package/dist/kt-dsl/decl/index.d.ts.map +0 -1
  195. package/dist/kt-dsl/decl/index.js +0 -11
  196. package/dist/kt-dsl/decl/index.js.map +0 -1
  197. package/dist/kt-dsl/decl/interface.d.ts +0 -33
  198. package/dist/kt-dsl/decl/interface.d.ts.map +0 -1
  199. package/dist/kt-dsl/decl/interface.js +0 -24
  200. package/dist/kt-dsl/decl/interface.js.map +0 -1
  201. package/dist/kt-dsl/decl/object.d.ts +0 -34
  202. package/dist/kt-dsl/decl/object.d.ts.map +0 -1
  203. package/dist/kt-dsl/decl/object.js +0 -24
  204. package/dist/kt-dsl/decl/object.js.map +0 -1
  205. package/dist/kt-dsl/decl/prop.d.ts +0 -47
  206. package/dist/kt-dsl/decl/prop.d.ts.map +0 -1
  207. package/dist/kt-dsl/decl/prop.js +0 -28
  208. package/dist/kt-dsl/decl/prop.js.map +0 -1
  209. package/dist/kt-dsl/decl/sealedClass.d.ts +0 -68
  210. package/dist/kt-dsl/decl/sealedClass.d.ts.map +0 -1
  211. package/dist/kt-dsl/decl/sealedClass.js +0 -52
  212. package/dist/kt-dsl/decl/sealedClass.js.map +0 -1
  213. package/dist/kt-dsl/decl/topLevel.d.ts +0 -19
  214. package/dist/kt-dsl/decl/topLevel.d.ts.map +0 -1
  215. package/dist/kt-dsl/decl/topLevel.js +0 -17
  216. package/dist/kt-dsl/decl/topLevel.js.map +0 -1
  217. package/dist/kt-dsl/decl/typeAlias.d.ts +0 -23
  218. package/dist/kt-dsl/decl/typeAlias.d.ts.map +0 -1
  219. package/dist/kt-dsl/decl/typeAlias.js +0 -18
  220. package/dist/kt-dsl/decl/typeAlias.js.map +0 -1
  221. package/dist/kt-dsl/decl/types.d.ts +0 -10
  222. package/dist/kt-dsl/decl/types.d.ts.map +0 -1
  223. package/dist/kt-dsl/decl/types.js +0 -2
  224. package/dist/kt-dsl/decl/types.js.map +0 -1
  225. package/dist/kt-dsl/expr/access.d.ts +0 -48
  226. package/dist/kt-dsl/expr/access.d.ts.map +0 -1
  227. package/dist/kt-dsl/expr/access.js +0 -59
  228. package/dist/kt-dsl/expr/access.js.map +0 -1
  229. package/dist/kt-dsl/expr/call.d.ts +0 -38
  230. package/dist/kt-dsl/expr/call.d.ts.map +0 -1
  231. package/dist/kt-dsl/expr/call.js +0 -38
  232. package/dist/kt-dsl/expr/call.js.map +0 -1
  233. package/dist/kt-dsl/expr/index.d.ts +0 -7
  234. package/dist/kt-dsl/expr/index.d.ts.map +0 -1
  235. package/dist/kt-dsl/expr/index.js +0 -7
  236. package/dist/kt-dsl/expr/index.js.map +0 -1
  237. package/dist/kt-dsl/expr/literal.d.ts +0 -100
  238. package/dist/kt-dsl/expr/literal.d.ts.map +0 -1
  239. package/dist/kt-dsl/expr/literal.js +0 -108
  240. package/dist/kt-dsl/expr/literal.js.map +0 -1
  241. package/dist/kt-dsl/expr/misc.d.ts +0 -45
  242. package/dist/kt-dsl/expr/misc.d.ts.map +0 -1
  243. package/dist/kt-dsl/expr/misc.js +0 -63
  244. package/dist/kt-dsl/expr/misc.js.map +0 -1
  245. package/dist/kt-dsl/expr/op.d.ts +0 -25
  246. package/dist/kt-dsl/expr/op.d.ts.map +0 -1
  247. package/dist/kt-dsl/expr/op.js +0 -24
  248. package/dist/kt-dsl/expr/op.js.map +0 -1
  249. package/dist/kt-dsl/expr/types.d.ts +0 -93
  250. package/dist/kt-dsl/expr/types.d.ts.map +0 -1
  251. package/dist/kt-dsl/expr/types.js +0 -2
  252. package/dist/kt-dsl/expr/types.js.map +0 -1
  253. package/dist/kt-dsl/file.d.ts +0 -14
  254. package/dist/kt-dsl/file.d.ts.map +0 -1
  255. package/dist/kt-dsl/file.js +0 -9
  256. package/dist/kt-dsl/file.js.map +0 -1
  257. package/dist/kt-dsl/fun.d.ts +0 -73
  258. package/dist/kt-dsl/fun.d.ts.map +0 -1
  259. package/dist/kt-dsl/fun.js +0 -50
  260. package/dist/kt-dsl/fun.js.map +0 -1
  261. package/dist/kt-dsl/index.d.ts +0 -8
  262. package/dist/kt-dsl/index.d.ts.map +0 -1
  263. package/dist/kt-dsl/index.js +0 -8
  264. package/dist/kt-dsl/index.js.map +0 -1
  265. package/dist/kt-dsl/stmt/binding.d.ts +0 -56
  266. package/dist/kt-dsl/stmt/binding.d.ts.map +0 -1
  267. package/dist/kt-dsl/stmt/binding.js +0 -70
  268. package/dist/kt-dsl/stmt/binding.js.map +0 -1
  269. package/dist/kt-dsl/stmt/control.d.ts +0 -80
  270. package/dist/kt-dsl/stmt/control.d.ts.map +0 -1
  271. package/dist/kt-dsl/stmt/control.js +0 -77
  272. package/dist/kt-dsl/stmt/control.js.map +0 -1
  273. package/dist/kt-dsl/stmt/index.d.ts +0 -4
  274. package/dist/kt-dsl/stmt/index.d.ts.map +0 -1
  275. package/dist/kt-dsl/stmt/index.js +0 -4
  276. package/dist/kt-dsl/stmt/index.js.map +0 -1
  277. package/dist/kt-dsl/stmt/types.d.ts +0 -62
  278. package/dist/kt-dsl/stmt/types.d.ts.map +0 -1
  279. package/dist/kt-dsl/stmt/types.js +0 -2
  280. package/dist/kt-dsl/stmt/types.js.map +0 -1
  281. package/dist/kt-dsl/type/builders.d.ts +0 -75
  282. package/dist/kt-dsl/type/builders.d.ts.map +0 -1
  283. package/dist/kt-dsl/type/builders.js +0 -83
  284. package/dist/kt-dsl/type/builders.js.map +0 -1
  285. package/dist/kt-dsl/type/index.d.ts +0 -3
  286. package/dist/kt-dsl/type/index.d.ts.map +0 -1
  287. package/dist/kt-dsl/type/index.js +0 -3
  288. package/dist/kt-dsl/type/index.js.map +0 -1
  289. package/dist/kt-dsl/type/types.d.ts +0 -25
  290. package/dist/kt-dsl/type/types.d.ts.map +0 -1
  291. package/dist/kt-dsl/type/types.js +0 -2
  292. package/dist/kt-dsl/type/types.js.map +0 -1
  293. package/dist/kt-dsl/visibility.d.ts +0 -2
  294. package/dist/kt-dsl/visibility.d.ts.map +0 -1
  295. package/dist/kt-dsl/visibility.js +0 -2
  296. package/dist/kt-dsl/visibility.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { type KtExpr, type KtType } from "../../kt-dsl/index.js";
1
+ import { type KtExpr, type KtType } from "../../ast/index.js";
2
2
  /**
3
3
  * Build the kotlinx-serialization `KSerializer<T>` expression for a
4
4
  * `KtType`. Used wherever the impl needs to feed a serializer to
@@ -16,5 +16,7 @@ import { type KtExpr, type KtType } from "../../kt-dsl/index.js";
16
16
  * The orchestrator tracks which builtin imports are needed and emits
17
17
  * the right `import kotlinx.serialization.builtins.*` line.
18
18
  */
19
- export declare function serializerFor(t: KtType): KtExpr;
19
+ /** Type aliases by name, so `X.serializer()` is only emitted for real classes. */
20
+ export type SerializerAliases = ReadonlyMap<string, KtType>;
21
+ export declare function serializerFor(t: KtType, aliases?: SerializerAliases): KtExpr;
20
22
  //# sourceMappingURL=serializer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../../src/ir/impl/serializer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,MAAM,EACX,KAAK,MAAM,EAKZ,MAAM,uBAAuB,CAAC;AAE/B;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAqB/C"}
1
+ {"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../../src/ir/impl/serializer.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,MAAM,EACX,KAAK,MAAM,EAOZ,MAAM,oBAAoB,CAAC;AAI5B;;;;;;;;;;;;;;;;GAgBG;AACH,kFAAkF;AAClF,MAAM,MAAM,iBAAiB,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE5D,wBAAgB,aAAa,CAC3B,CAAC,EAAE,MAAM,EACT,OAAO,GAAE,iBAA6B,GACrC,MAAM,CAsBR"}
@@ -1,62 +1,43 @@
1
- import { ktArg, ktCall, ktIdent, ktMember, } from "../../kt-dsl/index.js";
2
- /**
3
- * Build the kotlinx-serialization `KSerializer<T>` expression for a
4
- * `KtType`. Used wherever the impl needs to feed a serializer to
5
- * `Json.encodeToString(...)` / `client.execute(..., deserializer)` /
6
- * `Json.decodeFromString(...)`.
7
- *
8
- * - `String`/`Int`/`Long`/… → `String.serializer()` etc. (built-in shortcuts)
9
- * - `List<T>` → `ListSerializer(<inner>)`
10
- * - `Map<K, V>` → `MapSerializer(<keySer>, <valSer>)`
11
- * - nullable `T?` → `<inner>.nullable`
12
- * - user type `T` → `T.serializer()` (always present on
13
- * `@Serializable` data classes / enums)
14
- * - `Any` → `JsonElement.serializer()` (best-effort)
15
- *
16
- * The orchestrator tracks which builtin imports are needed and emits
17
- * the right `import kotlinx.serialization.builtins.*` line.
18
- */
19
- export function serializerFor(t) {
20
- switch (t.kind) {
21
- case "primitive":
22
- return primitiveSerializer(t.name);
23
- case "nullable":
24
- return ktMember(serializerFor(t.inner), "nullable");
25
- case "list":
26
- return ktCall(ktIdent("ListSerializer"), [
27
- ktArg(serializerFor(t.element)),
28
- ]);
29
- case "map":
30
- return ktCall(ktIdent("MapSerializer"), [
31
- ktArg(serializerFor(t.key)),
32
- ktArg(serializerFor(t.value)),
33
- ]);
34
- case "ref":
35
- return ktCall(ktMember(ktIdent(t.name), "serializer"), []);
36
- case "func":
37
- // No good serializer for closure types; falls back to JsonElement.
38
- return ktCall(ktMember(ktIdent("JsonElement"), "serializer"), []);
39
- }
40
- }
41
- function primitiveSerializer(name) {
42
- switch (name) {
43
- case "String":
44
- case "Int":
45
- case "Long":
46
- case "Short":
47
- case "Byte":
48
- case "Double":
49
- case "Float":
50
- case "Boolean":
51
- return ktCall(ktMember(ktIdent(name), "serializer"), []);
52
- case "ByteArray":
53
- // ByteArraySerializer is a top-level value, not a fun.
54
- return ktIdent("ByteArraySerializer()");
55
- case "Unit":
56
- case "Any":
57
- case "Nothing":
58
- default:
59
- return ktCall(ktMember(ktIdent("JsonElement"), "serializer"), []);
60
- }
1
+ import { kt } from "@ir-kit/compiler-kotlin";
2
+ import { ktArg, ktCall, ktIdent, ktMember, typeArgs, typeName, } from "../../ast/index.js";
3
+ const K = kt.KotlinNodeKind;
4
+ export function serializerFor(t, aliases = new Map()) {
5
+ if (t.kind === K.NullableType)
6
+ return ktMember(serializerFor(t.type, aliases), "nullable");
7
+ const name = typeName(t);
8
+ if (name === undefined)
9
+ return jsonElementSerializer();
10
+ const [first, second] = typeArgs(t);
11
+ if (name === "List" && first)
12
+ return ktCall(ktIdent("ListSerializer"), [
13
+ ktArg(serializerFor(first, aliases)),
14
+ ]);
15
+ if (name === "Map" && first && second)
16
+ return ktCall(ktIdent("MapSerializer"), [
17
+ ktArg(serializerFor(first, aliases)),
18
+ ktArg(serializerFor(second, aliases)),
19
+ ]);
20
+ if (BUILTIN_SERIALIZERS.has(name))
21
+ return ktCall(ktMember(ktIdent(name), "serializer"), []);
22
+ if (name === "ByteArray")
23
+ return ktCall(ktIdent("ByteArraySerializer"), []);
24
+ if (OPAQUE.has(name))
25
+ return jsonElementSerializer();
26
+ const target = aliases.get(name);
27
+ if (target)
28
+ return serializerFor(target, aliases);
29
+ return ktCall(ktMember(ktIdent(name), "serializer"), []);
61
30
  }
31
+ const BUILTIN_SERIALIZERS = new Set([
32
+ "String",
33
+ "Int",
34
+ "Long",
35
+ "Short",
36
+ "Byte",
37
+ "Double",
38
+ "Float",
39
+ "Boolean",
40
+ ]);
41
+ const OPAQUE = new Set(["Unit", "Any", "Nothing"]);
42
+ const jsonElementSerializer = () => ktCall(ktMember(ktIdent("JsonElement"), "serializer"), []);
62
43
  //# sourceMappingURL=serializer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serializer.js","sourceRoot":"","sources":["../../../src/ir/impl/serializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,EACL,MAAM,EACN,OAAO,EACP,QAAQ,GACT,MAAM,uBAAuB,CAAC;AAE/B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,aAAa,CAAC,CAAS;IACrC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,WAAW;YACd,OAAO,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACrC,KAAK,UAAU;YACb,OAAO,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC;QACtD,KAAK,MAAM;YACT,OAAO,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE;gBACvC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;aAChC,CAAC,CAAC;QACL,KAAK,KAAK;YACR,OAAO,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE;gBACtC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC3B,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;aAC9B,CAAC,CAAC;QACL,KAAK,KAAK;YACR,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7D,KAAK,MAAM;YACT,mEAAmE;YACnE,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;IACtE,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY;IACvC,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ,CAAC;QACd,KAAK,KAAK,CAAC;QACX,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO,CAAC;QACb,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ,CAAC;QACd,KAAK,OAAO,CAAC;QACb,KAAK,SAAS;YACZ,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3D,KAAK,WAAW;YACd,uDAAuD;YACvD,OAAO,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAC1C,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK,CAAC;QACX,KAAK,SAAS,CAAC;QACf;YACE,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;IACtE,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"serializer.js","sourceRoot":"","sources":["../../../src/ir/impl/serializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,yBAAyB,CAAC;AAE7C,OAAO,EAGL,KAAK,EACL,MAAM,EACN,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,QAAQ,GACT,MAAM,oBAAoB,CAAC;AAE5B,MAAM,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC;AAsB5B,MAAM,UAAU,aAAa,CAC3B,CAAS,EACT,UAA6B,IAAI,GAAG,EAAE;IAEtC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,YAAY;QAC3B,OAAO,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC;IAC9D,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACzB,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,qBAAqB,EAAE,CAAC;IACvD,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpC,IAAI,IAAI,KAAK,MAAM,IAAI,KAAK;QAC1B,OAAO,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE;YACvC,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;SACrC,CAAC,CAAC;IACL,IAAI,IAAI,KAAK,KAAK,IAAI,KAAK,IAAI,MAAM;QACnC,OAAO,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE;YACtC,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACpC,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SACtC,CAAC,CAAC;IACL,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC;QAC/B,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;IAC3D,IAAI,IAAI,KAAK,WAAW;QAAE,OAAO,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5E,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,qBAAqB,EAAE,CAAC;IACrD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,MAAM;QAAE,OAAO,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClD,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,mBAAmB,GAAwB,IAAI,GAAG,CAAC;IACvD,QAAQ;IACR,KAAK;IACL,MAAM;IACN,OAAO;IACP,MAAM;IACN,QAAQ;IACR,OAAO;IACP,SAAS;CACV,CAAC,CAAC;AAEH,MAAM,MAAM,GAAwB,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;AAExE,MAAM,qBAAqB,GAAG,GAAW,EAAE,CACzC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { type LocatedParam } from "@ir-kit/openapi";
2
- import { type KtStmt } from "../../kt-dsl/index.js";
2
+ import { type KtStmt } from "../../ast/index.js";
3
3
  /**
4
4
  * Statements that build an `HttpUrl` from `baseUrl`, the path template,
5
5
  * and query parameters. The result is bound to `url`.
@@ -1 +1 @@
1
- {"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../../src/ir/impl/url.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,YAAY,EAIlB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAGL,KAAK,MAAM,EAWZ,MAAM,uBAAuB,CAAC;AAG/B;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,aAAa,CAAC,YAAY,CAAC,GACnC,aAAa,CAAC,MAAM,CAAC,CAuBvB"}
1
+ {"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../../src/ir/impl/url.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,YAAY,EAIlB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAGL,KAAK,MAAM,EAWZ,MAAM,oBAAoB,CAAC;AAG5B;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,aAAa,CAAC,YAAY,CAAC,GACnC,aAAa,CAAC,MAAM,CAAC,CAuBvB"}
@@ -1,6 +1,6 @@
1
1
  import { paramsAt, parseTemplatedSegment, splitPathSegments, } from "@ir-kit/openapi";
2
- import { ktArg, ktBoolLit, ktCall, ktExprStmt, ktIdent, ktInterp, ktMember, ktStr, ktVal, ktVar, } from "../../kt-dsl/index.js";
3
- import { paramIdent } from "../identifiers.js";
2
+ import { ktArg, ktBoolLit, ktCall, ktExprStmt, ktIdent, ktInterp, ktMember, ktStr, ktVal, ktVar, } from "../../ast/index.js";
3
+ import { operationParamIdent } from "../identifiers.js";
4
4
  /**
5
5
  * Statements that build an `HttpUrl` from `baseUrl`, the path template,
6
6
  * and query parameters. The result is bound to `url`.
@@ -34,7 +34,7 @@ function segmentExpr(seg, pathParams) {
34
34
  const parts = parseTemplatedSegment(seg, pathParams).map((p) => p.kind === "literal"
35
35
  ? p.text
36
36
  : {
37
- expr: ktIdent(paramIdent(p.param ? p.param.name : p.name)),
37
+ expr: ktIdent(operationParamIdent(p.param ? p.param.name : p.name)),
38
38
  isString: p.param?.schema.type === "string",
39
39
  });
40
40
  if (parts.length === 0)
@@ -50,7 +50,7 @@ function segmentExpr(seg, pathParams) {
50
50
  return ktInterp(parts.map((p) => (typeof p === "string" ? p : p.expr)));
51
51
  }
52
52
  function buildQueryStmt(p) {
53
- const id = paramIdent(p.name);
53
+ const id = operationParamIdent(p.name);
54
54
  const isArray = p.schema.type === "array";
55
55
  const helper = isArray ? "addArray" : "addScalar";
56
56
  const args = [
@@ -1 +1 @@
1
- {"version":3,"file":"url.js","sourceRoot":"","sources":["../../../src/ir/impl/url.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"url.js","sourceRoot":"","sources":["../../../src/ir/impl/url.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  export type { OperationsOptions, OperationsResult } from "./operations.js";
2
- export { operationsToDecls } from "./operations.js";
2
+ export { aliasesOf, operationsToDecls } from "./operations.js";
3
3
  export { schemasToDecls } from "./schema.js";
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ir/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ir/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC"}
package/dist/ir/index.js CHANGED
@@ -1,3 +1,3 @@
1
- export { operationsToDecls } from "./operations.js";
1
+ export { aliasesOf, operationsToDecls } from "./operations.js";
2
2
  export { schemasToDecls } from "./schema.js";
3
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ir/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ir/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { IR } from "@hey-api/shared";
2
- import { type KtFunParam } from "../../kt-dsl/index.js";
2
+ import { type KtFunParam } from "../../ast/index.js";
3
3
  import type { TypeCtx } from "../type/index.js";
4
4
  /**
5
5
  * Resolve an `IR.BodyObject` into function parameters for both the
@@ -1 +1 @@
1
- {"version":3,"file":"body.d.ts","sourceRoot":"","sources":["../../../src/ir/operation/body.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAO1C,OAAO,EACL,KAAK,UAAU,EAIhB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAGhD;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,EAAE,CAAC,UAAU,EACnB,GAAG,EAAE,OAAO,GACX,aAAa,CAAC,UAAU,CAAC,CAoB3B"}
1
+ {"version":3,"file":"body.d.ts","sourceRoot":"","sources":["../../../src/ir/operation/body.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAO1C,OAAO,EACL,KAAK,UAAU,EAIhB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAGhD;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,EAAE,CAAC,UAAU,EACnB,GAAG,EAAE,OAAO,GACX,aAAa,CAAC,UAAU,CAAC,CAoB3B"}
@@ -1,6 +1,6 @@
1
1
  import { classifyBody, iterateObjectProperties, } from "@ir-kit/openapi";
2
- import { ktByteArray, ktFunParam, ktNullable, } from "../../kt-dsl/index.js";
3
- import { paramIdent } from "../identifiers.js";
2
+ import { ktByteArray, ktFunParam, ktNullable, } from "../../ast/index.js";
3
+ import { operationParamIdent } from "../identifiers.js";
4
4
  import { schemaToType } from "../type/index.js";
5
5
  /**
6
6
  * Resolve an `IR.BodyObject` into function parameters for both the
@@ -39,7 +39,7 @@ function objectBodyToFlatParams(schema, ctx, binaryAsByteArray) {
39
39
  ? ktByteArray
40
40
  : schemaToType(propSchema, { ...ctx, propPath: ["body", propName] });
41
41
  return ktFunParam({
42
- name: paramIdent(propName),
42
+ name: operationParamIdent(propName),
43
43
  type: required ? t : ktNullable(t),
44
44
  default: required ? undefined : "null",
45
45
  });
@@ -1 +1 @@
1
- {"version":3,"file":"body.js","sourceRoot":"","sources":["../../../src/ir/operation/body.ts"],"names":[],"mappings":"AACA,OAAO,EACL,YAAY,EACZ,uBAAuB,GAExB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAEL,WAAW,EACX,UAAU,EACV,UAAU,GACX,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAC7B,IAAmB,EACnB,GAAY;IAEZ,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAE7C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,aAAa;YAChB,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;QAC3D,KAAK,YAAY;YACf,OAAO;gBACL,UAAU,CAAC;oBACT,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,YAAY,CAAC,MAAM,EAAE,EAAE,GAAG,GAAG,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;iBAC3D,CAAC;aACH,CAAC;QACJ,KAAK,kBAAkB;YACrB,OAAO,sBAAsB,CAAC,MAAM,EAAE,GAAG,EAAE,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC3E,KAAK,wBAAwB;YAC3B,OAAO,sBAAsB,CAAC,MAAM,EAAE,GAAG,EAAE,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAC5E,KAAK,QAAQ;YACX,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,MAAc,EACd,GAAY,EACZ,iBAA0B;IAE1B,OAAO,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CACpD,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;QAChE,MAAM,CAAC,GACL,iBAAiB,IAAI,QAAQ;YAC3B,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,YAAY,CAAC,UAAU,EAAE,EAAE,GAAG,GAAG,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;QACzE,OAAO,UAAU,CAAC;YAChB,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC;YAC1B,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YAClC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;SACvC,CAAC,CAAC;IACL,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"body.js","sourceRoot":"","sources":["../../../src/ir/operation/body.ts"],"names":[],"mappings":"AACA,OAAO,EACL,YAAY,EACZ,uBAAuB,GAExB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAEL,WAAW,EACX,UAAU,EACV,UAAU,GACX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAC7B,IAAmB,EACnB,GAAY;IAEZ,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAE7C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,aAAa;YAChB,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;QAC3D,KAAK,YAAY;YACf,OAAO;gBACL,UAAU,CAAC;oBACT,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,YAAY,CAAC,MAAM,EAAE,EAAE,GAAG,GAAG,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;iBAC3D,CAAC;aACH,CAAC;QACJ,KAAK,kBAAkB;YACrB,OAAO,sBAAsB,CAAC,MAAM,EAAE,GAAG,EAAE,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC3E,KAAK,wBAAwB;YAC3B,OAAO,sBAAsB,CAAC,MAAM,EAAE,GAAG,EAAE,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAC5E,KAAK,QAAQ;YACX,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,MAAc,EACd,GAAY,EACZ,iBAA0B;IAE1B,OAAO,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CACpD,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;QAChE,MAAM,CAAC,GACL,iBAAiB,IAAI,QAAQ;YAC3B,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,YAAY,CAAC,UAAU,EAAE,EAAE,GAAG,GAAG,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;QACzE,OAAO,UAAU,CAAC;YAChB,IAAI,EAAE,mBAAmB,CAAC,QAAQ,CAAC;YACnC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YAClC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;SACvC,CAAC,CAAC;IACL,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { IR } from "@hey-api/shared";
2
2
  import { type LocatedParam } from "@ir-kit/openapi";
3
- import { type KtFunParam } from "../../kt-dsl/index.js";
3
+ import { type KtFunParam } from "../../ast/index.js";
4
4
  import type { TypeCtx } from "../type/index.js";
5
5
  /**
6
6
  * Produce the function parameters for path/query/header parameters in
@@ -1 +1 @@
1
- {"version":3,"file":"params.d.ts","sourceRoot":"","sources":["../../../src/ir/operation/params.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,KAAK,UAAU,EAA0B,MAAM,uBAAuB,CAAC;AAEhF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAGhD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,EAAE,CAAC,eAAe,EACtB,GAAG,EAAE,OAAO,GACX;IAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAAC,OAAO,EAAE,YAAY,EAAE,CAAA;CAAE,CAiBnD"}
1
+ {"version":3,"file":"params.d.ts","sourceRoot":"","sources":["../../../src/ir/operation/params.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,KAAK,UAAU,EAA0B,MAAM,oBAAoB,CAAC;AAE7E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAGhD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,EAAE,CAAC,eAAe,EACtB,GAAG,EAAE,OAAO,GACX;IAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAAC,OAAO,EAAE,YAAY,EAAE,CAAA;CAAE,CAiBnD"}
@@ -1,6 +1,6 @@
1
1
  import { collectLocatedParams, fromHeyApi, } from "@ir-kit/openapi";
2
- import { ktFunParam, ktNullable } from "../../kt-dsl/index.js";
3
- import { paramIdent } from "../identifiers.js";
2
+ import { ktFunParam, ktNullable } from "../../ast/index.js";
3
+ import { operationParamIdent } from "../identifiers.js";
4
4
  import { schemaToType } from "../type/index.js";
5
5
  /**
6
6
  * Produce the function parameters for path/query/header parameters in
@@ -18,7 +18,7 @@ export function buildNonBodyParams(op, ctx) {
18
18
  propPath: ["param", p.name],
19
19
  });
20
20
  return ktFunParam({
21
- name: paramIdent(p.name),
21
+ name: operationParamIdent(p.name),
22
22
  type: p.required ? t : ktNullable(t),
23
23
  default: p.required ? undefined : "null",
24
24
  });
@@ -1 +1 @@
1
- {"version":3,"file":"params.js","sourceRoot":"","sources":["../../../src/ir/operation/params.ts"],"names":[],"mappings":"AACA,OAAO,EACL,oBAAoB,EACpB,UAAU,GAEX,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAmB,UAAU,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAChC,EAAsB,EACtB,GAAY;IAEZ,MAAM,OAAO,GAAG,oBAAoB,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC;IAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE9E,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE;QAC1C,MAAM,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;YAC3C,GAAG,GAAG;YACN,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC;SAC5B,CAAC,CAAC;QACH,OAAO,UAAU,CAAC;YAChB,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;YACxB,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YACpC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;SACzC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"params.js","sourceRoot":"","sources":["../../../src/ir/operation/params.ts"],"names":[],"mappings":"AACA,OAAO,EACL,oBAAoB,EACpB,UAAU,GAEX,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAmB,UAAU,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAChC,EAAsB,EACtB,GAAY;IAEZ,MAAM,OAAO,GAAG,oBAAoB,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC;IAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE9E,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE;QAC1C,MAAM,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;YAC3C,GAAG,GAAG;YACN,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC;SAC5B,CAAC,CAAC;QACH,OAAO,UAAU,CAAC;YAChB,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC;YACjC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YACpC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;SACzC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AAC7B,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { IR } from "@hey-api/shared";
2
- import { type KtType } from "../../kt-dsl/index.js";
2
+ import { type KtType } from "../../ast/index.js";
3
3
  import type { TypeCtx } from "../type/index.js";
4
4
  import type { ResponseCase } from "./signature.js";
5
5
  export interface ResolvedReturn {
@@ -11,6 +11,8 @@ export interface ResolvedReturn {
11
11
  * dispatches on `response.code`.
12
12
  */
13
13
  cases: ReadonlyArray<ResponseCase>;
14
+ /** Name of the emitted sealed class, for multi-2xx ops. */
15
+ sealedName?: string;
14
16
  }
15
17
  export declare function returnTypeFor(op: IR.OperationObject, ctx: TypeCtx): ResolvedReturn;
16
18
  //# sourceMappingURL=response.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../../src/ir/operation/response.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAI1C,OAAO,EACL,KAAK,MAAM,EAMZ,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAEhD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,KAAK,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;CACpC;AAED,wBAAgB,aAAa,CAC3B,EAAE,EAAE,EAAE,CAAC,eAAe,EACtB,GAAG,EAAE,OAAO,GACX,cAAc,CA2ChB"}
1
+ {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../../src/ir/operation/response.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAI1C,OAAO,EACL,KAAK,MAAM,EAMZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAEhD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,KAAK,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IACnC,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,aAAa,CAC3B,EAAE,EAAE,EAAE,CAAC,eAAe,EACtB,GAAG,EAAE,OAAO,GACX,cAAc,CA6ChB"}
@@ -1,6 +1,6 @@
1
1
  import { synthName } from "@ir-kit/codegen-core";
2
2
  import { classifyReturnShape } from "@ir-kit/openapi";
3
- import { ktProp, ktRef, ktSealedClass, ktSealedSubclass, ktUnit, } from "../../kt-dsl/index.js";
3
+ import { ktProp, ktRef, ktSealedClass, ktSealedSubclass, ktUnit, } from "../../ast/index.js";
4
4
  import { schemaToType } from "../type/index.js";
5
5
  export function returnTypeFor(op, ctx) {
6
6
  const shape = classifyReturnShape(op);
@@ -10,7 +10,7 @@ export function returnTypeFor(op, ctx) {
10
10
  case "single":
11
11
  return { type: schemaToType(shape.schema, ctx), cases: [] };
12
12
  case "multi": {
13
- const sealedName = synthName(ctx.ownerName, ["response"]);
13
+ const sealedName = ctx.names.claim(`synth:${ctx.ownerName}/response`, synthName(ctx.ownerName, ["response"]));
14
14
  const cases = shape.cases.map(({ statusCode, schema }) => {
15
15
  const caseName = `Status${statusCode}`;
16
16
  if (!schema)
@@ -31,13 +31,12 @@ export function returnTypeFor(op, ctx) {
31
31
  ktProp({
32
32
  name: "value",
33
33
  type: c.payloadType,
34
- inPrimary: true,
35
34
  }),
36
35
  ],
37
36
  })
38
37
  : ktSealedSubclass({ variant: "object", name: c.caseName })),
39
38
  }));
40
- return { type: ktRef(sealedName), cases };
39
+ return { type: ktRef(sealedName), cases, sealedName };
41
40
  }
42
41
  }
43
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/ir/operation/response.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,EAEL,MAAM,EACN,KAAK,EACL,aAAa,EACb,gBAAgB,EAChB,MAAM,GACP,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAchD,MAAM,UAAU,aAAa,CAC3B,EAAsB,EACtB,GAAY;IAEZ,MAAM,KAAK,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;IACtC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,MAAM;YACT,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QACrC,KAAK,QAAQ;YACX,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QAC9D,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;YAC1D,MAAM,KAAK,GAAmB,KAAK,CAAC,KAAK,CAAC,GAAG,CAC3C,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE;gBACzB,MAAM,QAAQ,GAAG,SAAS,UAAU,EAAE,CAAC;gBACvC,IAAI,CAAC,MAAM;oBAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;gBAC7C,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,EAAE;oBACvC,GAAG,GAAG;oBACN,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC;iBACnC,CAAC,CAAC;gBACH,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;YAC/C,CAAC,CACF,CAAC;YACF,GAAG,CAAC,IAAI,CACN,aAAa,CAAC;gBACZ,IAAI,EAAE,UAAU;gBAChB,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1B,CAAC,CAAC,WAAW;oBACX,CAAC,CAAC,gBAAgB,CAAC;wBACf,OAAO,EAAE,OAAO;wBAChB,IAAI,EAAE,CAAC,CAAC,QAAQ;wBAChB,UAAU,EAAE;4BACV,MAAM,CAAC;gCACL,IAAI,EAAE,OAAO;gCACb,IAAI,EAAE,CAAC,CAAC,WAAW;gCACnB,SAAS,EAAE,IAAI;6BAChB,CAAC;yBACH;qBACF,CAAC;oBACJ,CAAC,CAAC,gBAAgB,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAC9D;aACF,CAAC,CACH,CAAC;YACF,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,CAAC;QAC5C,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/ir/operation/response.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,EAEL,MAAM,EACN,KAAK,EACL,aAAa,EACb,gBAAgB,EAChB,MAAM,GACP,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAgBhD,MAAM,UAAU,aAAa,CAC3B,EAAsB,EACtB,GAAY;IAEZ,MAAM,KAAK,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;IACtC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,MAAM;YACT,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QACrC,KAAK,QAAQ;YACX,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QAC9D,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAChC,SAAS,GAAG,CAAC,SAAS,WAAW,EACjC,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,CAAC,CACvC,CAAC;YACF,MAAM,KAAK,GAAmB,KAAK,CAAC,KAAK,CAAC,GAAG,CAC3C,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE;gBACzB,MAAM,QAAQ,GAAG,SAAS,UAAU,EAAE,CAAC;gBACvC,IAAI,CAAC,MAAM;oBAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;gBAC7C,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,EAAE;oBACvC,GAAG,GAAG;oBACN,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC;iBACnC,CAAC,CAAC;gBACH,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;YAC/C,CAAC,CACF,CAAC;YACF,GAAG,CAAC,IAAI,CACN,aAAa,CAAC;gBACZ,IAAI,EAAE,UAAU;gBAChB,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1B,CAAC,CAAC,WAAW;oBACX,CAAC,CAAC,gBAAgB,CAAC;wBACf,OAAO,EAAE,OAAO;wBAChB,IAAI,EAAE,CAAC,CAAC,QAAQ;wBAChB,UAAU,EAAE;4BACV,MAAM,CAAC;gCACL,IAAI,EAAE,OAAO;gCACb,IAAI,EAAE,CAAC,CAAC,WAAW;6BACpB,CAAC;yBACH;qBACF,CAAC;oBACJ,CAAC,CAAC,gBAAgB,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAC9D;aACF,CAAC,CACH,CAAC;YACF,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;QACxD,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,7 +1,8 @@
1
1
  import type { IR } from "@hey-api/shared";
2
+ import type { Namespace } from "@ir-kit/codegen-core";
2
3
  import type { HttpMethod } from "@ir-kit/openapi";
3
4
  import { type LocatedParam } from "@ir-kit/openapi";
4
- import { type KtFunParam, type KtType } from "../../kt-dsl/index.js";
5
+ import { type KtFunParam, type KtType } from "../../ast/index.js";
5
6
  import type { TypeCtx } from "../type/index.js";
6
7
  export interface OperationSignature {
7
8
  name: string;
@@ -15,6 +16,7 @@ export interface OperationSignature {
15
16
  pathStr: string;
16
17
  securitySchemeNames: ReadonlyArray<string>;
17
18
  responseCases: ReadonlyArray<ResponseCase>;
19
+ sealedName?: string;
18
20
  }
19
21
  /**
20
22
  * One arm of a multi-2xx sum-type return. Populated by `returnTypeFor`
@@ -32,5 +34,5 @@ export interface ResponseCase {
32
34
  * One source of truth for `params + returnType + doc` so the interface
33
35
  * declaration and the impl class share the same signature shape.
34
36
  */
35
- export declare function operationSignature(op: IR.OperationObject, method: HttpMethod, pathStr: string, emit: TypeCtx["emit"], schemeNames?: ReadonlyArray<string>): OperationSignature;
37
+ export declare function operationSignature(op: IR.OperationObject, method: HttpMethod, pathStr: string, emit: TypeCtx["emit"], schemeNames: ReadonlyArray<string>, names: Namespace): OperationSignature;
36
38
  //# sourceMappingURL=signature.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"signature.d.ts","sourceRoot":"","sources":["../../../src/ir/operation/signature.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAE1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAEL,KAAK,YAAY,EAElB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,KAAK,UAAU,EACf,KAAK,MAAM,EAGZ,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAKhD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IAC3C,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC;IACvB,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC3C,aAAa,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;CAC5C;AAED;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,EAAE,CAAC,eAAe,EACtB,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,EACrB,WAAW,GAAE,aAAa,CAAC,MAAM,CAAM,GACtC,kBAAkB,CA0BpB"}
1
+ {"version":3,"file":"signature.d.ts","sourceRoot":"","sources":["../../../src/ir/operation/signature.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAEL,KAAK,YAAY,EAElB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,KAAK,UAAU,EACf,KAAK,MAAM,EAGZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAKhD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IAC3C,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC;IACvB,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC3C,aAAa,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,EAAE,CAAC,eAAe,EACtB,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,EACrB,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,EAClC,KAAK,EAAE,SAAS,GACf,kBAAkB,CA+BpB"}
@@ -1,6 +1,6 @@
1
1
  import { camel, pascal } from "@ir-kit/codegen-core";
2
2
  import { deriveBaseName, operationDocLine, } from "@ir-kit/openapi";
3
- import { ktFunParam, ktRef, } from "../../kt-dsl/index.js";
3
+ import { ktFunParam, ktRef, } from "../../ast/index.js";
4
4
  import { buildBodyParams } from "./body.js";
5
5
  import { buildNonBodyParams } from "./params.js";
6
6
  import { returnTypeFor } from "./response.js";
@@ -8,14 +8,14 @@ import { returnTypeFor } from "./response.js";
8
8
  * One source of truth for `params + returnType + doc` so the interface
9
9
  * declaration and the impl class share the same signature shape.
10
10
  */
11
- export function operationSignature(op, method, pathStr, emit, schemeNames = []) {
11
+ export function operationSignature(op, method, pathStr, emit, schemeNames, names) {
12
12
  const name = deriveBaseName(op, method, pathStr);
13
13
  const ownerName = pascal(name);
14
- const ctx = { emit, ownerName, propPath: [] };
14
+ const ctx = { emit, names, ownerName, propPath: [] };
15
15
  const { params: nonBody, located } = buildNonBodyParams(op, ctx);
16
16
  const bodyParams = op.body ? buildBodyParams(op.body, ctx) : [];
17
17
  const params = [...nonBody, ...bodyParams, optionsParam()];
18
- const { type: returnType, cases: responseCases } = returnTypeFor(op, {
18
+ const { type: returnType, cases: responseCases, sealedName, } = returnTypeFor(op, {
19
19
  ...ctx,
20
20
  propPath: ["response"],
21
21
  });
@@ -24,6 +24,7 @@ export function operationSignature(op, method, pathStr, emit, schemeNames = [])
24
24
  ownerName,
25
25
  params,
26
26
  returnType,
27
+ sealedName,
27
28
  doc: operationDocLine(method, pathStr),
28
29
  locatedParams: located,
29
30
  op,
@@ -1 +1 @@
1
- {"version":3,"file":"signature.js","sourceRoot":"","sources":["../../../src/ir/operation/signature.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EACL,cAAc,EAEd,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAGL,UAAU,EACV,KAAK,GACN,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AA6B9C;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAChC,EAAsB,EACtB,MAAkB,EAClB,OAAe,EACf,IAAqB,EACrB,cAAqC,EAAE;IAEvC,MAAM,IAAI,GAAG,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,GAAG,GAAY,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAEvD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,kBAAkB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACjE,MAAM,UAAU,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,MAAM,MAAM,GAAG,CAAC,GAAG,OAAO,EAAE,GAAG,UAAU,EAAE,YAAY,EAAE,CAAC,CAAC;IAC3D,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,aAAa,CAAC,EAAE,EAAE;QACnE,GAAG,GAAG;QACN,QAAQ,EAAE,CAAC,UAAU,CAAC;KACvB,CAAC,CAAC;IAEH,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC;QACjB,SAAS;QACT,MAAM;QACN,UAAU;QACV,GAAG,EAAE,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC;QACtC,aAAa,EAAE,OAAO;QACtB,EAAE;QACF,MAAM;QACN,OAAO;QACP,mBAAmB,EAAE,WAAW;QAChC,aAAa;KACd,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,YAAY;IACnB,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAC;KAC9B,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"signature.js","sourceRoot":"","sources":["../../../src/ir/operation/signature.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EACL,cAAc,EAEd,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAGL,UAAU,EACV,KAAK,GACN,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AA8B9C;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAChC,EAAsB,EACtB,MAAkB,EAClB,OAAe,EACf,IAAqB,EACrB,WAAkC,EAClC,KAAgB;IAEhB,MAAM,IAAI,GAAG,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,GAAG,GAAY,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAE9D,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,kBAAkB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACjE,MAAM,UAAU,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,MAAM,MAAM,GAAG,CAAC,GAAG,OAAO,EAAE,GAAG,UAAU,EAAE,YAAY,EAAE,CAAC,CAAC;IAC3D,MAAM,EACJ,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,aAAa,EACpB,UAAU,GACX,GAAG,aAAa,CAAC,EAAE,EAAE;QACpB,GAAG,GAAG;QACN,QAAQ,EAAE,CAAC,UAAU,CAAC;KACvB,CAAC,CAAC;IAEH,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC;QACjB,SAAS;QACT,MAAM;QACN,UAAU;QACV,UAAU;QACV,GAAG,EAAE,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC;QACtC,aAAa,EAAE,OAAO;QACtB,EAAE;QACF,MAAM;QACN,OAAO;QACP,mBAAmB,EAAE,WAAW;QAChC,aAAa;KACd,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,YAAY;IACnB,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAC;KAC9B,CAAC,CAAC;AACL,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { IR } from "@hey-api/shared";
2
- import { type KtDecl } from "../kt-dsl/index.js";
2
+ import { type Namespace } from "@ir-kit/codegen-core";
3
+ import { type KtDecl, type KtType } from "../ast/index.js";
3
4
  export interface OperationsOptions {
4
5
  /** Default: `"Default"`. */
5
6
  defaultTag?: string;
@@ -21,6 +22,10 @@ export interface OperationsOptions {
21
22
  * here. Empty / missing entries → no auto-auth wiring for that op.
22
23
  */
23
24
  securitySchemeNames?: ReadonlyMap<string, ReadonlyArray<string>>;
25
+ /** Shared type-name owner; pass the one used for `schemasToDecls`. */
26
+ names?: Namespace;
27
+ /** Type aliases declared outside these operations (component schemas). */
28
+ aliases?: ReadonlyMap<string, KtType>;
24
29
  }
25
30
  export interface OperationsResult {
26
31
  decls: KtDecl[];
@@ -40,4 +45,5 @@ export interface OperationsResult {
40
45
  * in the same output array.
41
46
  */
42
47
  export declare function operationsToDecls(paths: IR.PathsObject | undefined, opts?: OperationsOptions): OperationsResult;
48
+ export declare function aliasesOf(decls: ReadonlyArray<KtDecl>): Array<[string, KtType]>;
43
49
  //# sourceMappingURL=operations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/ir/operations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAI1C,OAAO,EACL,KAAK,MAAM,EAaZ,MAAM,oBAAoB,CAAC;AAO5B,MAAM,WAAW,iBAAiB;IAChC,4BAA4B;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IACxC,8DAA8D;IAC9D,eAAe,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,MAAM,CAAC;IACpD,6DAA6D;IAC7D,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;CAClE;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB;;wBAEoB;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB;;mEAE+D;IAC/D,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,EAAE,CAAC,WAAW,GAAG,SAAS,EACjC,IAAI,GAAE,iBAAsB,GAC3B,gBAAgB,CAqDlB"}
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/ir/operations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,KAAK,SAAS,EAAU,MAAM,sBAAsB,CAAC;AAG9D,OAAO,EAEL,KAAK,MAAM,EAEX,KAAK,MAAM,EAWZ,MAAM,iBAAiB,CAAC;AAQzB,MAAM,WAAW,iBAAiB;IAChC,4BAA4B;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IACxC,8DAA8D;IAC9D,eAAe,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,MAAM,CAAC;IACpD,6DAA6D;IAC7D,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;IACjE,sEAAsE;IACtE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB;;wBAEoB;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB;;mEAE+D;IAC/D,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,EAAE,CAAC,WAAW,GAAG,SAAS,EACjC,IAAI,GAAE,iBAAsB,GAC3B,gBAAgB,CA8DlB;AAiFD,wBAAgB,SAAS,CACvB,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,GAC3B,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAIzB"}
@@ -1,6 +1,7 @@
1
1
  import { pascal } from "@ir-kit/codegen-core";
2
2
  import { iterOperations } from "@ir-kit/openapi";
3
- import { ktArg, ktCall, ktExprStmt, ktFun, ktIdent, ktInterface, ktMember, ktRef, ktReturn, ktTopLevelFun, } from "../kt-dsl/index.js";
3
+ import { isUnit, ktArg, ktCall, ktExprStmt, ktFun, ktIdent, ktInterface, ktMember, ktRef, ktReturn, ktTopLevelFun, } from "../ast/index.js";
4
+ import { kotlinTypeIdent, newTypeNames } from "./identifiers.js";
4
5
  import { buildClientClass } from "./impl/index.js";
5
6
  import { operationSignature, } from "./operation/index.js";
6
7
  /**
@@ -11,13 +12,14 @@ import { operationSignature, } from "./operation/index.js";
11
12
  */
12
13
  export function operationsToDecls(paths, opts = {}) {
13
14
  const defaultTag = opts.defaultTag ?? "Default";
14
- const interfaceName = opts.interfaceName ?? ((tag) => `${pascal(tag)}Api`);
15
+ const interfaceName = opts.interfaceName ?? ((tag) => kotlinTypeIdent(`${tag} Api`));
15
16
  const clientClassName = opts.clientClassName ?? ((p) => `OkHttp${p}`);
16
17
  const decls = [];
17
18
  const emit = (d) => decls.push(d);
18
19
  const byTag = new Map();
20
+ const names = opts.names ?? newTypeNames();
19
21
  for (const { pathStr, method, op, schemeNames } of iterOperations(paths, opts.securitySchemeNames)) {
20
- const sig = operationSignature(op, method, pathStr, emit, schemeNames);
22
+ const sig = operationSignature(op, method, pathStr, emit, schemeNames, names);
21
23
  const tag = op.tags?.[0] ?? defaultTag;
22
24
  const list = byTag.get(tag);
23
25
  if (list)
@@ -45,6 +47,7 @@ export function operationsToDecls(paths, opts = {}) {
45
47
  if (!opts.interfaceOnly) {
46
48
  const result = buildClientClass(clientClassName(ifaceName), ifaceName, allSigs, {
47
49
  open: opts.openImpl,
50
+ aliases: new Map([...(opts.aliases ?? []), ...aliasesOf(decls)]),
48
51
  });
49
52
  decls.push(result.class);
50
53
  if (result.needsMultipart)
@@ -67,8 +70,8 @@ function withResponseSignature(sig) {
67
70
  };
68
71
  }
69
72
  function withResponseReturnType(t) {
70
- const isUnit = t.kind === "primitive" && t.name === "Unit";
71
- return isUnit ? ktRef("Response") : ktRef("Pair", [t, ktRef("Response")]);
73
+ const unit = isUnit(t);
74
+ return unit ? ktRef("Response") : ktRef("Pair", [t, ktRef("Response")]);
72
75
  }
73
76
  function hasSecurity(sig) {
74
77
  return sig.securitySchemeNames.length > 0;
@@ -110,7 +113,7 @@ function signatureToConvenienceFun(sig, receiverName) {
110
113
  const callArgs = baseParams.map((p) => ktArg(ktIdent(p.name), p.name));
111
114
  callArgs.push(ktArg(ktCall(ktIdent("RequestOptions"), []), "options"));
112
115
  const forwarded = ktCall(ktMember(ktIdent("this"), sig.name), callArgs);
113
- const isUnit = sig.returnType.kind === "primitive" && sig.returnType.name === "Unit";
116
+ const unit = isUnit(sig.returnType);
114
117
  return ktFun({
115
118
  name: sig.name,
116
119
  params: baseParams,
@@ -118,7 +121,10 @@ function signatureToConvenienceFun(sig, receiverName) {
118
121
  modifiers: ["suspend"],
119
122
  doc: sig.doc,
120
123
  receiver: ktRef(receiverName),
121
- body: [isUnit ? ktExprStmt(forwarded) : ktReturn(forwarded)],
124
+ body: [unit ? ktExprStmt(forwarded) : ktReturn(forwarded)],
122
125
  });
123
126
  }
127
+ export function aliasesOf(decls) {
128
+ return decls.flatMap((d) => d.aliasOf ? [[d.name, d.aliasOf]] : []);
129
+ }
124
130
  //# sourceMappingURL=operations.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/ir/operations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/ir/operations.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  export type { RuntimeFile, RuntimeOpts } from "./templates.js";
2
- export { apiClientKt, buildRuntimeFiles } from "./templates.js";
2
+ export { buildRuntimeFiles } from "./templates.js";
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ir/runtime/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ir/runtime/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -1,2 +1,2 @@
1
- export { apiClientKt, buildRuntimeFiles } from "./templates.js";
1
+ export { buildRuntimeFiles } from "./templates.js";
2
2
  //# sourceMappingURL=index.js.map