@typespec/emitter-framework 0.15.0-dev.2 → 0.15.0-dev.4

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 (259) hide show
  1. package/CHANGELOG.md +1 -16
  2. package/dist/src/core/components/overrides/component-overrides.d.ts.map +1 -1
  3. package/dist/src/core/components/overrides/component-overrides.js.map +1 -1
  4. package/dist/src/python/builtins.d.ts +14 -0
  5. package/dist/src/python/builtins.d.ts.map +1 -0
  6. package/dist/src/python/builtins.js +29 -0
  7. package/dist/src/python/builtins.js.map +1 -0
  8. package/dist/src/python/components/array-expression/array-expression.d.ts +6 -0
  9. package/dist/src/python/components/array-expression/array-expression.d.ts.map +1 -0
  10. package/dist/src/python/components/array-expression/array-expression.js +11 -0
  11. package/dist/src/python/components/array-expression/array-expression.js.map +1 -0
  12. package/dist/src/python/components/array-expression/array-expression.test.d.ts +2 -0
  13. package/dist/src/python/components/array-expression/array-expression.test.d.ts.map +1 -0
  14. package/dist/src/python/components/array-expression/array-expression.test.js +19 -0
  15. package/dist/src/python/components/array-expression/array-expression.test.js.map +1 -0
  16. package/dist/src/python/components/array-expression/index.d.ts +2 -0
  17. package/dist/src/python/components/array-expression/index.d.ts.map +1 -0
  18. package/dist/src/python/components/array-expression/index.js +2 -0
  19. package/dist/src/python/components/array-expression/index.js.map +1 -0
  20. package/dist/src/python/components/atom/atom.d.ts +33 -0
  21. package/dist/src/python/components/atom/atom.d.ts.map +1 -0
  22. package/dist/src/python/components/atom/atom.js +88 -0
  23. package/dist/src/python/components/atom/atom.js.map +1 -0
  24. package/dist/src/python/components/atom/atom.test.d.ts +2 -0
  25. package/dist/src/python/components/atom/atom.test.d.ts.map +1 -0
  26. package/dist/src/python/components/atom/atom.test.js +224 -0
  27. package/dist/src/python/components/atom/atom.test.js.map +1 -0
  28. package/dist/src/python/components/atom/index.d.ts +2 -0
  29. package/dist/src/python/components/atom/index.d.ts.map +1 -0
  30. package/dist/src/python/components/atom/index.js +2 -0
  31. package/dist/src/python/components/atom/index.js.map +1 -0
  32. package/dist/src/python/components/class-declaration/class-bases.d.ts +45 -0
  33. package/dist/src/python/components/class-declaration/class-bases.d.ts.map +1 -0
  34. package/dist/src/python/components/class-declaration/class-bases.js +84 -0
  35. package/dist/src/python/components/class-declaration/class-bases.js.map +1 -0
  36. package/dist/src/python/components/class-declaration/class-body.d.ts +16 -0
  37. package/dist/src/python/components/class-declaration/class-body.d.ts.map +1 -0
  38. package/dist/src/python/components/class-declaration/class-body.js +52 -0
  39. package/dist/src/python/components/class-declaration/class-body.js.map +1 -0
  40. package/dist/src/python/components/class-declaration/class-declaration.d.ts +23 -0
  41. package/dist/src/python/components/class-declaration/class-declaration.d.ts.map +1 -0
  42. package/dist/src/python/components/class-declaration/class-declaration.js +118 -0
  43. package/dist/src/python/components/class-declaration/class-declaration.js.map +1 -0
  44. package/dist/src/python/components/class-declaration/class-declaration.test.d.ts +2 -0
  45. package/dist/src/python/components/class-declaration/class-declaration.test.d.ts.map +1 -0
  46. package/dist/src/python/components/class-declaration/class-declaration.test.js +1527 -0
  47. package/dist/src/python/components/class-declaration/class-declaration.test.js.map +1 -0
  48. package/dist/src/python/components/class-declaration/class-member.d.ts +16 -0
  49. package/dist/src/python/components/class-declaration/class-member.d.ts.map +1 -0
  50. package/dist/src/python/components/class-declaration/class-member.js +71 -0
  51. package/dist/src/python/components/class-declaration/class-member.js.map +1 -0
  52. package/dist/src/python/components/class-declaration/class-member.test.d.ts +2 -0
  53. package/dist/src/python/components/class-declaration/class-member.test.d.ts.map +1 -0
  54. package/dist/src/python/components/class-declaration/class-member.test.js +202 -0
  55. package/dist/src/python/components/class-declaration/class-member.test.js.map +1 -0
  56. package/dist/src/python/components/class-declaration/class-method.d.ts +22 -0
  57. package/dist/src/python/components/class-declaration/class-method.d.ts.map +1 -0
  58. package/dist/src/python/components/class-declaration/class-method.js +76 -0
  59. package/dist/src/python/components/class-declaration/class-method.js.map +1 -0
  60. package/dist/src/python/components/class-declaration/class-method.test.d.ts +2 -0
  61. package/dist/src/python/components/class-declaration/class-method.test.d.ts.map +1 -0
  62. package/dist/src/python/components/class-declaration/class-method.test.js +298 -0
  63. package/dist/src/python/components/class-declaration/class-method.test.js.map +1 -0
  64. package/dist/src/python/components/class-declaration/index.d.ts +7 -0
  65. package/dist/src/python/components/class-declaration/index.d.ts.map +1 -0
  66. package/dist/src/python/components/class-declaration/index.js +7 -0
  67. package/dist/src/python/components/class-declaration/index.js.map +1 -0
  68. package/dist/src/python/components/class-declaration/primitive-initializer.d.ts +22 -0
  69. package/dist/src/python/components/class-declaration/primitive-initializer.d.ts.map +1 -0
  70. package/dist/src/python/components/class-declaration/primitive-initializer.js +67 -0
  71. package/dist/src/python/components/class-declaration/primitive-initializer.js.map +1 -0
  72. package/dist/src/python/components/doc-element/doc-element.d.ts +46 -0
  73. package/dist/src/python/components/doc-element/doc-element.d.ts.map +1 -0
  74. package/dist/src/python/components/doc-element/doc-element.js +59 -0
  75. package/dist/src/python/components/doc-element/doc-element.js.map +1 -0
  76. package/dist/src/python/components/doc-element/index.d.ts +2 -0
  77. package/dist/src/python/components/doc-element/index.d.ts.map +1 -0
  78. package/dist/src/python/components/doc-element/index.js +2 -0
  79. package/dist/src/python/components/doc-element/index.js.map +1 -0
  80. package/dist/src/python/components/enum-declaration/enum-declaration.d.ts +8 -0
  81. package/dist/src/python/components/enum-declaration/enum-declaration.d.ts.map +1 -0
  82. package/dist/src/python/components/enum-declaration/enum-declaration.js +80 -0
  83. package/dist/src/python/components/enum-declaration/enum-declaration.js.map +1 -0
  84. package/dist/src/python/components/enum-declaration/enum-declaration.test.d.ts +2 -0
  85. package/dist/src/python/components/enum-declaration/enum-declaration.test.d.ts.map +1 -0
  86. package/dist/src/python/components/enum-declaration/enum-declaration.test.js +344 -0
  87. package/dist/src/python/components/enum-declaration/enum-declaration.test.js.map +1 -0
  88. package/dist/src/python/components/enum-declaration/enum-member.d.ts +9 -0
  89. package/dist/src/python/components/enum-declaration/enum-member.d.ts.map +1 -0
  90. package/dist/src/python/components/enum-declaration/enum-member.js +22 -0
  91. package/dist/src/python/components/enum-declaration/enum-member.js.map +1 -0
  92. package/dist/src/python/components/enum-declaration/index.d.ts +3 -0
  93. package/dist/src/python/components/enum-declaration/index.d.ts.map +1 -0
  94. package/dist/src/python/components/enum-declaration/index.js +3 -0
  95. package/dist/src/python/components/enum-declaration/index.js.map +1 -0
  96. package/dist/src/python/components/function-declaration/function-declaration.d.ts +24 -0
  97. package/dist/src/python/components/function-declaration/function-declaration.d.ts.map +1 -0
  98. package/dist/src/python/components/function-declaration/function-declaration.js +68 -0
  99. package/dist/src/python/components/function-declaration/function-declaration.js.map +1 -0
  100. package/dist/src/python/components/function-declaration/function-declaration.test.d.ts +2 -0
  101. package/dist/src/python/components/function-declaration/function-declaration.test.d.ts.map +1 -0
  102. package/dist/src/python/components/function-declaration/function-declaration.test.js +682 -0
  103. package/dist/src/python/components/function-declaration/function-declaration.test.js.map +1 -0
  104. package/dist/src/python/components/function-declaration/index.d.ts +2 -0
  105. package/dist/src/python/components/function-declaration/index.d.ts.map +1 -0
  106. package/dist/src/python/components/function-declaration/index.js +2 -0
  107. package/dist/src/python/components/function-declaration/index.js.map +1 -0
  108. package/dist/src/python/components/index.d.ts +12 -0
  109. package/dist/src/python/components/index.d.ts.map +1 -0
  110. package/dist/src/python/components/index.js +12 -0
  111. package/dist/src/python/components/index.js.map +1 -0
  112. package/dist/src/python/components/protocol-declaration/callable-parameters.d.ts +25 -0
  113. package/dist/src/python/components/protocol-declaration/callable-parameters.d.ts.map +1 -0
  114. package/dist/src/python/components/protocol-declaration/callable-parameters.js +33 -0
  115. package/dist/src/python/components/protocol-declaration/callable-parameters.js.map +1 -0
  116. package/dist/src/python/components/protocol-declaration/index.d.ts +3 -0
  117. package/dist/src/python/components/protocol-declaration/index.d.ts.map +1 -0
  118. package/dist/src/python/components/protocol-declaration/index.js +3 -0
  119. package/dist/src/python/components/protocol-declaration/index.js.map +1 -0
  120. package/dist/src/python/components/protocol-declaration/protocol-declaration.d.ts +8 -0
  121. package/dist/src/python/components/protocol-declaration/protocol-declaration.d.ts.map +1 -0
  122. package/dist/src/python/components/protocol-declaration/protocol-declaration.js +86 -0
  123. package/dist/src/python/components/protocol-declaration/protocol-declaration.js.map +1 -0
  124. package/dist/src/python/components/protocol-declaration/protocol-declaration.test.d.ts +2 -0
  125. package/dist/src/python/components/protocol-declaration/protocol-declaration.test.d.ts.map +1 -0
  126. package/dist/src/python/components/protocol-declaration/protocol-declaration.test.js +117 -0
  127. package/dist/src/python/components/protocol-declaration/protocol-declaration.test.js.map +1 -0
  128. package/dist/src/python/components/record-expression/index.d.ts +2 -0
  129. package/dist/src/python/components/record-expression/index.d.ts.map +1 -0
  130. package/dist/src/python/components/record-expression/index.js +2 -0
  131. package/dist/src/python/components/record-expression/index.js.map +1 -0
  132. package/dist/src/python/components/record-expression/record-expression.d.ts +6 -0
  133. package/dist/src/python/components/record-expression/record-expression.d.ts.map +1 -0
  134. package/dist/src/python/components/record-expression/record-expression.js +13 -0
  135. package/dist/src/python/components/record-expression/record-expression.js.map +1 -0
  136. package/dist/src/python/components/record-expression/record-expression.test.d.ts +2 -0
  137. package/dist/src/python/components/record-expression/record-expression.test.d.ts.map +1 -0
  138. package/dist/src/python/components/record-expression/record-expression.test.js +19 -0
  139. package/dist/src/python/components/record-expression/record-expression.test.js.map +1 -0
  140. package/dist/src/python/components/type-alias-declaration/index.d.ts +2 -0
  141. package/dist/src/python/components/type-alias-declaration/index.d.ts.map +1 -0
  142. package/dist/src/python/components/type-alias-declaration/index.js +2 -0
  143. package/dist/src/python/components/type-alias-declaration/index.js.map +1 -0
  144. package/dist/src/python/components/type-alias-declaration/type-alias-declaration.d.ts +16 -0
  145. package/dist/src/python/components/type-alias-declaration/type-alias-declaration.d.ts.map +1 -0
  146. package/dist/src/python/components/type-alias-declaration/type-alias-declaration.js +75 -0
  147. package/dist/src/python/components/type-alias-declaration/type-alias-declaration.js.map +1 -0
  148. package/dist/src/python/components/type-alias-declaration/type-alias-declaration.test.d.ts +2 -0
  149. package/dist/src/python/components/type-alias-declaration/type-alias-declaration.test.d.ts.map +1 -0
  150. package/dist/src/python/components/type-alias-declaration/type-alias-declaration.test.js +140 -0
  151. package/dist/src/python/components/type-alias-declaration/type-alias-declaration.test.js.map +1 -0
  152. package/dist/src/python/components/type-declaration/index.d.ts +2 -0
  153. package/dist/src/python/components/type-declaration/index.d.ts.map +1 -0
  154. package/dist/src/python/components/type-declaration/index.js +2 -0
  155. package/dist/src/python/components/type-declaration/index.js.map +1 -0
  156. package/dist/src/python/components/type-declaration/type-declaration.d.ts +11 -0
  157. package/dist/src/python/components/type-declaration/type-declaration.d.ts.map +1 -0
  158. package/dist/src/python/components/type-declaration/type-declaration.js +31 -0
  159. package/dist/src/python/components/type-declaration/type-declaration.js.map +1 -0
  160. package/dist/src/python/components/type-declaration/type-declaration.test.d.ts +2 -0
  161. package/dist/src/python/components/type-declaration/type-declaration.test.d.ts.map +1 -0
  162. package/dist/src/python/components/type-declaration/type-declaration.test.js +69 -0
  163. package/dist/src/python/components/type-declaration/type-declaration.test.js.map +1 -0
  164. package/dist/src/python/components/type-expression/index.d.ts +2 -0
  165. package/dist/src/python/components/type-expression/index.d.ts.map +1 -0
  166. package/dist/src/python/components/type-expression/index.js +2 -0
  167. package/dist/src/python/components/type-expression/index.js.map +1 -0
  168. package/dist/src/python/components/type-expression/type-expression.d.ts +12 -0
  169. package/dist/src/python/components/type-expression/type-expression.d.ts.map +1 -0
  170. package/dist/src/python/components/type-expression/type-expression.js +348 -0
  171. package/dist/src/python/components/type-expression/type-expression.js.map +1 -0
  172. package/dist/src/python/components/type-expression/type-expression.test.d.ts +2 -0
  173. package/dist/src/python/components/type-expression/type-expression.test.d.ts.map +1 -0
  174. package/dist/src/python/components/type-expression/type-expression.test.js +503 -0
  175. package/dist/src/python/components/type-expression/type-expression.test.js.map +1 -0
  176. package/dist/src/python/index.d.ts +4 -0
  177. package/dist/src/python/index.d.ts.map +1 -0
  178. package/dist/src/python/index.js +4 -0
  179. package/dist/src/python/index.js.map +1 -0
  180. package/dist/src/python/lib.d.ts +68 -0
  181. package/dist/src/python/lib.d.ts.map +1 -0
  182. package/dist/src/python/lib.js +38 -0
  183. package/dist/src/python/lib.js.map +1 -0
  184. package/dist/src/python/test-utils.d.ts +8 -0
  185. package/dist/src/python/test-utils.d.ts.map +1 -0
  186. package/dist/src/python/test-utils.js +25 -0
  187. package/dist/src/python/test-utils.js.map +1 -0
  188. package/dist/src/python/utils/index.d.ts +4 -0
  189. package/dist/src/python/utils/index.d.ts.map +1 -0
  190. package/dist/src/python/utils/index.js +4 -0
  191. package/dist/src/python/utils/index.js.map +1 -0
  192. package/dist/src/python/utils/operation.d.ts +27 -0
  193. package/dist/src/python/utils/operation.d.ts.map +1 -0
  194. package/dist/src/python/utils/operation.js +139 -0
  195. package/dist/src/python/utils/operation.js.map +1 -0
  196. package/dist/src/python/utils/refkey.d.ts +23 -0
  197. package/dist/src/python/utils/refkey.d.ts.map +1 -0
  198. package/dist/src/python/utils/refkey.js +36 -0
  199. package/dist/src/python/utils/refkey.js.map +1 -0
  200. package/dist/src/python/utils/type.d.ts +19 -0
  201. package/dist/src/python/utils/type.d.ts.map +1 -0
  202. package/dist/src/python/utils/type.js +24 -0
  203. package/dist/src/python/utils/type.js.map +1 -0
  204. package/dist/src/typescript/components/function-declaration.d.ts.map +1 -1
  205. package/dist/src/typescript/components/function-declaration.js.map +1 -1
  206. package/package.json +12 -4
  207. package/package.json.bak +13 -4
  208. package/src/core/components/overrides/component-overrides.tsx +9 -6
  209. package/src/python/builtins.ts +43 -0
  210. package/src/python/components/array-expression/array-expression.test.tsx +14 -0
  211. package/src/python/components/array-expression/array-expression.tsx +11 -0
  212. package/src/python/components/array-expression/index.ts +1 -0
  213. package/src/python/components/atom/atom.test.tsx +244 -0
  214. package/src/python/components/atom/atom.tsx +95 -0
  215. package/src/python/components/atom/index.ts +1 -0
  216. package/src/python/components/class-declaration/class-bases.tsx +92 -0
  217. package/src/python/components/class-declaration/class-body.tsx +56 -0
  218. package/src/python/components/class-declaration/class-declaration.test.tsx +1414 -0
  219. package/src/python/components/class-declaration/class-declaration.tsx +116 -0
  220. package/src/python/components/class-declaration/class-member.test.tsx +194 -0
  221. package/src/python/components/class-declaration/class-member.tsx +67 -0
  222. package/src/python/components/class-declaration/class-method.test.tsx +250 -0
  223. package/src/python/components/class-declaration/class-method.tsx +97 -0
  224. package/src/python/components/class-declaration/index.ts +6 -0
  225. package/src/python/components/class-declaration/primitive-initializer.tsx +62 -0
  226. package/src/python/components/doc-element/doc-element.tsx +83 -0
  227. package/src/python/components/doc-element/index.ts +1 -0
  228. package/src/python/components/enum-declaration/enum-declaration.test.tsx +319 -0
  229. package/src/python/components/enum-declaration/enum-declaration.tsx +77 -0
  230. package/src/python/components/enum-declaration/enum-member.tsx +21 -0
  231. package/src/python/components/enum-declaration/index.ts +2 -0
  232. package/src/python/components/function-declaration/function-declaration.test.tsx +582 -0
  233. package/src/python/components/function-declaration/function-declaration.tsx +90 -0
  234. package/src/python/components/function-declaration/index.ts +1 -0
  235. package/src/python/components/index.ts +11 -0
  236. package/src/python/components/protocol-declaration/callable-parameters.tsx +44 -0
  237. package/src/python/components/protocol-declaration/index.ts +2 -0
  238. package/src/python/components/protocol-declaration/protocol-declaration.test.tsx +106 -0
  239. package/src/python/components/protocol-declaration/protocol-declaration.tsx +73 -0
  240. package/src/python/components/record-expression/index.ts +1 -0
  241. package/src/python/components/record-expression/record-expression.test.tsx +14 -0
  242. package/src/python/components/record-expression/record-expression.tsx +13 -0
  243. package/src/python/components/type-alias-declaration/index.ts +1 -0
  244. package/src/python/components/type-alias-declaration/type-alias-declaration.test.tsx +117 -0
  245. package/src/python/components/type-alias-declaration/type-alias-declaration.tsx +67 -0
  246. package/src/python/components/type-declaration/index.ts +1 -0
  247. package/src/python/components/type-declaration/type-declaration.test.tsx +58 -0
  248. package/src/python/components/type-declaration/type-declaration.tsx +26 -0
  249. package/src/python/components/type-expression/index.ts +1 -0
  250. package/src/python/components/type-expression/type-expression.test.tsx +463 -0
  251. package/src/python/components/type-expression/type-expression.tsx +333 -0
  252. package/src/python/index.ts +3 -0
  253. package/src/python/lib.ts +40 -0
  254. package/src/python/test-utils.tsx +31 -0
  255. package/src/python/utils/index.ts +3 -0
  256. package/src/python/utils/operation.ts +161 -0
  257. package/src/python/utils/refkey.ts +36 -0
  258. package/src/python/utils/type.ts +31 -0
  259. package/src/typescript/components/function-declaration.tsx +4 -2
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Tester","List","py","t","describe","expect","it","ClassDeclaration","Method","EnumDeclaration","getOutput","TypeAliasDeclaration","program","Widget","compile","code","model","_$createComponent","type","toRenderTo","Foo","doc","ClassDoc","description","Person","toThrow","Color","union","name","children","_$createIntrinsic","ErrorWidget","WidgetOperations","interface","WidgetOperationsExtended","returnType","methodType","StringResponse","StringResult","IntResult","StringRepository","UserRepository","ProductRepository","CanadaAddress","StringContainer","MyResult","Address","Response","ConcreteResponse","BaseEntity","abstract"],"sources":["../../../../../src/python/components/class-declaration/class-declaration.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,16 @@
1
+ import { type Children } from "@alloy-js/core";
2
+ import { type ModelProperty, type Operation } from "@typespec/compiler";
3
+ export interface ClassMemberProps {
4
+ type: ModelProperty | Operation;
5
+ doc?: Children;
6
+ optional?: boolean;
7
+ methodType?: "method" | "class" | "static";
8
+ abstract?: boolean;
9
+ }
10
+ /**
11
+ * Creates the class member for the property.
12
+ * @param props - The props for the class member.
13
+ * @returns The class member.
14
+ */
15
+ export declare function ClassMember(props: ClassMemberProps): Children;
16
+ //# sourceMappingURL=class-member.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"class-member.d.ts","sourceRoot":"","sources":["../../../../../src/python/components/class-declaration/class-member.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAMxE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,aAAa,GAAG,SAAS,CAAC;IAChC,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,YA4ClD"}
@@ -0,0 +1,71 @@
1
+ import { createComponent as _$createComponent } from "@alloy-js/core/jsx-runtime";
2
+ import { typingModule } from "#python/builtins.js";
3
+ import * as py from "@alloy-js/python";
4
+ import { useTsp } from "../../../core/context/tsp-context.js";
5
+ import { TypeExpression } from "../type-expression/type-expression.js";
6
+ import { Method } from "./class-method.js";
7
+ import { PrimitiveInitializer } from "./primitive-initializer.js";
8
+ /**
9
+ * Creates the class member for the property.
10
+ * @param props - The props for the class member.
11
+ * @returns The class member.
12
+ */
13
+ export function ClassMember(props) {
14
+ const {
15
+ $
16
+ } = useTsp();
17
+ const namer = py.usePythonNamePolicy();
18
+ const name = namer.getName(props.type.name, "class-member");
19
+ const doc = props.doc ?? $.type.getDoc(props.type);
20
+ if ($.modelProperty.is(props.type)) {
21
+ // Map never-typed properties to typing.Never
22
+
23
+ const unpackedType = props.type.type;
24
+ const isOptional = props.optional ?? props.type.optional ?? false;
25
+ const defaultValue = props.type.defaultValue;
26
+ const initializer = defaultValue ? _$createComponent(PrimitiveInitializer, {
27
+ defaultValue: defaultValue,
28
+ propertyType: unpackedType
29
+ }) : undefined;
30
+ const unpackedTypeNode = _$createComponent(TypeExpression, {
31
+ type: unpackedType
32
+ });
33
+ const typeNode = isOptional ? _$createComponent(py.TypeReference, {
34
+ get refkey() {
35
+ return typingModule["."].Optional;
36
+ },
37
+ typeArgs: [unpackedTypeNode]
38
+ }) : unpackedTypeNode;
39
+ const classMemberProps = {
40
+ doc,
41
+ name,
42
+ optional: isOptional,
43
+ ...(typeNode ? {
44
+ type: typeNode
45
+ } : {}),
46
+ ...(initializer ? {
47
+ initializer
48
+ } : {}),
49
+ omitNone: !isOptional
50
+ };
51
+ return _$createComponent(py.VariableDeclaration, classMemberProps);
52
+ }
53
+ if ($.operation.is(props.type)) {
54
+ return _$createComponent(Method, {
55
+ get type() {
56
+ return props.type;
57
+ },
58
+ doc: doc,
59
+ get methodType() {
60
+ return props.methodType;
61
+ },
62
+ get abstract() {
63
+ return props.abstract;
64
+ }
65
+ });
66
+ }
67
+
68
+ // If type is neither ModelProperty nor Operation, return empty fragment
69
+ return [];
70
+ }
71
+ //# sourceMappingURL=class-member.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["typingModule","py","useTsp","TypeExpression","Method","PrimitiveInitializer","ClassMember","props","$","namer","usePythonNamePolicy","name","getName","type","doc","getDoc","modelProperty","is","unpackedType","isOptional","optional","defaultValue","initializer","_$createComponent","propertyType","undefined","unpackedTypeNode","typeNode","TypeReference","refkey","Optional","typeArgs","classMemberProps","omitNone","VariableDeclaration","operation","methodType","abstract"],"sources":["../../../../../src/python/components/class-declaration/class-member.tsx"],"sourcesContent":[null],"mappings":";AAAA,SAASA,YAAY,QAAQ,qBAAqB;AAElD,OAAO,KAAKC,EAAE,MAAM,kBAAkB;AAEtC,SAASC,MAAM,QAAQ,sCAAsC;AAC7D,SAASC,cAAc,QAAQ,uCAAuC;AACtE,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SAASC,oBAAoB,QAAQ,4BAA4B;AAUjE;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CAACC,KAAuB,EAAE;EACnD,MAAM;IAAEC;EAAE,CAAC,GAAGN,MAAM,CAAC,CAAC;EACtB,MAAMO,KAAK,GAAGR,EAAE,CAACS,mBAAmB,CAAC,CAAC;EACtC,MAAMC,IAAI,GAAGF,KAAK,CAACG,OAAO,CAACL,KAAK,CAACM,IAAI,CAACF,IAAI,EAAE,cAAc,CAAC;EAC3D,MAAMG,GAAG,GAAGP,KAAK,CAACO,GAAG,IAAIN,CAAC,CAACK,IAAI,CAACE,MAAM,CAACR,KAAK,CAACM,IAAI,CAAC;EAElD,IAAIL,CAAC,CAACQ,aAAa,CAACC,EAAE,CAACV,KAAK,CAACM,IAAI,CAAC,EAAE;IAClC;;IAEA,MAAMK,YAAY,GAAGX,KAAK,CAACM,IAAI,CAACA,IAAI;IACpC,MAAMM,UAAU,GAAGZ,KAAK,CAACa,QAAQ,IAAIb,KAAK,CAACM,IAAI,CAACO,QAAQ,IAAI,KAAK;IACjE,MAAMC,YAAY,GAAGd,KAAK,CAACM,IAAI,CAACQ,YAAY;IAC5C,MAAMC,WAAW,GAAGD,YAAY,GAAAE,iBAAA,CAC7BlB,oBAAoB;MAACgB,YAAY,EAAEA,YAAY;MAAEG,YAAY,EAAEN;IAAY,KAC1EO,SAAS;IACb,MAAMC,gBAA0B,GAAAH,iBAAA,CAAIpB,cAAc;MAACU,IAAI,EAAEK;IAAY,EAAI;IACzE,MAAMS,QAAQ,GAAGR,UAAU,GAAAI,iBAAA,CACxBtB,EAAE,CAAC2B,aAAa;MAAA,IACfC,MAAMA,CAAA;QAAA,OAAE7B,YAAY,CAAC,GAAG,CAAC,CAAC8B,QAAQ;MAAA;MAClCC,QAAQ,EAAE,CAACL,gBAAgB;IAAC,KAG9BA,gBACD;IAED,MAAMM,gBAAgB,GAAG;MACvBlB,GAAG;MACHH,IAAI;MACJS,QAAQ,EAAED,UAAU;MACpB,IAAIQ,QAAQ,GAAG;QAAEd,IAAI,EAAEc;MAAS,CAAC,GAAG,CAAC,CAAC,CAAC;MACvC,IAAIL,WAAW,GAAG;QAAEA;MAAY,CAAC,GAAG,CAAC,CAAC,CAAC;MACvCW,QAAQ,EAAE,CAACd;IACb,CAAC;IACD,OAAAI,iBAAA,CAAQtB,EAAE,CAACiC,mBAAmB,EAAKF,gBAAgB;EACrD;EAEA,IAAIxB,CAAC,CAAC2B,SAAS,CAAClB,EAAE,CAACV,KAAK,CAACM,IAAI,CAAC,EAAE;IAC9B,OAAAU,iBAAA,CACGnB,MAAM;MAAA,IAACS,IAAIA,CAAA;QAAA,OAAEN,KAAK,CAACM,IAAI;MAAA;MAAEC,GAAG,EAAEA,GAAG;MAAA,IAAEsB,UAAUA,CAAA;QAAA,OAAE7B,KAAK,CAAC6B,UAAU;MAAA;MAAA,IAAEC,QAAQA,CAAA;QAAA,OAAE9B,KAAK,CAAC8B,QAAQ;MAAA;IAAA;EAE9F;;EAEA;EACA;AACF","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=class-member.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"class-member.test.d.ts","sourceRoot":"","sources":["../../../../../src/python/components/class-declaration/class-member.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,202 @@
1
+ import { createComponent as _$createComponent } from "@alloy-js/core/jsx-runtime";
2
+ import { Tester } from "#test/test-host.js";
3
+ import { t } from "@typespec/compiler/testing";
4
+ import { describe, expect, it } from "vitest";
5
+ import { ClassDeclaration } from "../../../../src/python/components/class-declaration/class-declaration.js";
6
+ import { getOutput } from "../../test-utils.js";
7
+ describe("Python Class Members", () => {
8
+ describe("default values", () => {
9
+ it("renders string default values", async () => {
10
+ const {
11
+ program,
12
+ MyModel
13
+ } = await Tester.compile(t.code`
14
+ model ${t.model("MyModel")} {
15
+ name: string = "default";
16
+ description?: string = "optional with default";
17
+ emptyString: string = "";
18
+ }
19
+ `);
20
+ expect(getOutput(program, [_$createComponent(ClassDeclaration, {
21
+ type: MyModel
22
+ })])).toRenderTo(`
23
+ from dataclasses import dataclass
24
+ from typing import Optional
25
+
26
+
27
+ @dataclass(kw_only=True)
28
+ class MyModel:
29
+ name: str = "default"
30
+ description: Optional[str] = "optional with default"
31
+ empty_string: str = ""
32
+
33
+ `);
34
+ });
35
+ it("renders boolean default values", async () => {
36
+ const {
37
+ program,
38
+ BooleanModel
39
+ } = await Tester.compile(t.code`
40
+ model ${t.model("BooleanModel")} {
41
+ isActive: boolean = true;
42
+ isDeleted: boolean = false;
43
+ optional?: boolean = true;
44
+ }
45
+ `);
46
+ expect(getOutput(program, [_$createComponent(ClassDeclaration, {
47
+ type: BooleanModel
48
+ })])).toRenderTo(`
49
+ from dataclasses import dataclass
50
+ from typing import Optional
51
+
52
+
53
+ @dataclass(kw_only=True)
54
+ class BooleanModel:
55
+ is_active: bool = True
56
+ is_deleted: bool = False
57
+ optional: Optional[bool] = True
58
+
59
+ `);
60
+ });
61
+ it("renders array default values", async () => {
62
+ const {
63
+ program,
64
+ ArrayModel
65
+ } = await Tester.compile(t.code`
66
+ model ${t.model("ArrayModel")} {
67
+ tags: string[] = #["tag1", "tag2"];
68
+ emptyArray: int32[] = #[];
69
+ numbers: int32[] = #[1, 2, 3];
70
+ }
71
+ `);
72
+ expect(getOutput(program, [_$createComponent(ClassDeclaration, {
73
+ type: ArrayModel
74
+ })])).toRenderTo(`
75
+ from dataclasses import dataclass
76
+
77
+
78
+ @dataclass(kw_only=True)
79
+ class ArrayModel:
80
+ tags: list[str] = ["tag1", "tag2"]
81
+ empty_array: list[int] = []
82
+ numbers: list[int] = [1, 2, 3]
83
+
84
+ `);
85
+ });
86
+ it("renders integer default values without .0 suffix", async () => {
87
+ const {
88
+ program,
89
+ IntegerModel
90
+ } = await Tester.compile(t.code`
91
+ model ${t.model("IntegerModel")} {
92
+ count: int32 = 42;
93
+ bigNumber: int64 = 1000000;
94
+ smallNumber: int8 = 127;
95
+ unsignedValue: uint32 = 100;
96
+ safeIntValue: safeint = 999;
97
+ }
98
+ `);
99
+ expect(getOutput(program, [_$createComponent(ClassDeclaration, {
100
+ type: IntegerModel
101
+ })])).toRenderTo(`
102
+ from dataclasses import dataclass
103
+
104
+
105
+ @dataclass(kw_only=True)
106
+ class IntegerModel:
107
+ count: int = 42
108
+ big_number: int = 1000000
109
+ small_number: int = 127
110
+ unsigned_value: int = 100
111
+ safe_int_value: int = 999
112
+
113
+ `);
114
+ });
115
+ it("renders float and decimal default values correctly", async () => {
116
+ const {
117
+ program,
118
+ NumericDefaults
119
+ } = await Tester.compile(t.code`
120
+
121
+ scalar customFloat extends float;
122
+ scalar customDecimal extends decimal;
123
+
124
+ model ${t.model("NumericDefaults")} {
125
+ // Float variants with decimal values
126
+ floatBase: float = 1.5;
127
+ float32Value: float32 = 2.5;
128
+ float64Value: float64 = 3.5;
129
+ customFloatValue: customFloat = 4.5;
130
+
131
+ // Float variants with integer values (should render with .0)
132
+ floatInt: float = 10;
133
+ float32Int: float32 = 20;
134
+ float64Int: float64 = 30;
135
+
136
+ // Decimal variants
137
+ decimalBase: decimal = 100.25;
138
+ decimal128Value: decimal128 = 200.75;
139
+ customDecimalValue: customDecimal = 300.125;
140
+
141
+ // Decimal with integer values (should render with .0)
142
+ decimalInt: decimal = 400;
143
+ decimal128Int: decimal128 = 500;
144
+ }
145
+ `);
146
+ expect(getOutput(program, [_$createComponent(ClassDeclaration, {
147
+ type: NumericDefaults
148
+ })])).toRenderTo(`
149
+ from dataclasses import dataclass
150
+ from decimal import Decimal
151
+
152
+
153
+ @dataclass(kw_only=True)
154
+ class NumericDefaults:
155
+ float_base: float = 1.5
156
+ float32_value: float = 2.5
157
+ float64_value: float = 3.5
158
+ custom_float_value: float = 4.5
159
+ float_int: float = 10.0
160
+ float32_int: float = 20.0
161
+ float64_int: float = 30.0
162
+ decimal_base: Decimal = 100.25
163
+ decimal128_value: Decimal = 200.75
164
+ custom_decimal_value: Decimal = 300.125
165
+ decimal_int: Decimal = 400.0
166
+ decimal128_int: Decimal = 500.0
167
+
168
+ `);
169
+ });
170
+ it("distinguishes between integer and float types with same numeric value", async () => {
171
+ const {
172
+ program,
173
+ MixedNumeric
174
+ } = await Tester.compile(t.code`
175
+ model ${t.model("MixedNumeric")} {
176
+ intValue: int32 = 100;
177
+ int64Value: int64 = 100;
178
+ floatValue: float = 100;
179
+ float64Value: float64 = 100;
180
+ decimalValue: decimal = 100;
181
+ }
182
+ `);
183
+ expect(getOutput(program, [_$createComponent(ClassDeclaration, {
184
+ type: MixedNumeric
185
+ })])).toRenderTo(`
186
+ from dataclasses import dataclass
187
+ from decimal import Decimal
188
+
189
+
190
+ @dataclass(kw_only=True)
191
+ class MixedNumeric:
192
+ int_value: int = 100
193
+ int64_value: int = 100
194
+ float_value: float = 100.0
195
+ float64_value: float = 100.0
196
+ decimal_value: Decimal = 100.0
197
+
198
+ `);
199
+ });
200
+ });
201
+ });
202
+ //# sourceMappingURL=class-member.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Tester","t","describe","expect","it","ClassDeclaration","getOutput","program","MyModel","compile","code","model","_$createComponent","type","toRenderTo","BooleanModel","ArrayModel","IntegerModel","NumericDefaults","MixedNumeric"],"sources":["../../../../../src/python/components/class-declaration/class-member.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,22 @@
1
+ import { type Children } from "@alloy-js/core";
2
+ import * as py from "@alloy-js/python";
3
+ import type { Operation } from "@typespec/compiler";
4
+ export declare const MethodContext: import("@alloy-js/core").ComponentContext<"static" | "class" | "method" | undefined>;
5
+ export declare const MethodProvider: import("@alloy-js/core").ComponentDefinition<import("@alloy-js/core").ContextProviderProps<"static" | "class" | "method" | undefined>>;
6
+ export interface MethodPropsWithType extends Omit<py.MethodDeclarationBaseProps, "name"> {
7
+ type: Operation;
8
+ name?: string;
9
+ doc?: Children;
10
+ methodType?: "method" | "class" | "static";
11
+ abstract?: boolean;
12
+ /** If true, parameters replaces operation parameters instead of adding to them as keyword-only */
13
+ replaceParameters?: boolean;
14
+ }
15
+ export type MethodProps = MethodPropsWithType | py.MethodDeclarationBaseProps;
16
+ /**
17
+ * A Python class method. Pass the `type` prop to create the
18
+ * method by converting from a TypeSpec Operation. Any other props
19
+ * provided will take precedence.
20
+ */
21
+ export declare function Method(props: Readonly<MethodProps>): Children;
22
+ //# sourceMappingURL=class-method.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"class-method.d.ts","sourceRoot":"","sources":["../../../../../src/python/components/class-declaration/class-method.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAyC,MAAM,gBAAgB,CAAC;AACtF,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAMpD,eAAO,MAAM,aAAa,sFAAsE,CAAC;AACjG,eAAO,MAAM,cAAc,wIAAyB,CAAC;AAErD,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,EAAE,CAAC,0BAA0B,EAAE,MAAM,CAAC;IACtF,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,UAAU,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kGAAkG;IAClG,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,MAAM,WAAW,GAAG,mBAAmB,GAAG,EAAE,CAAC,0BAA0B,CAAC;AAa9E;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,YAyDlD"}
@@ -0,0 +1,76 @@
1
+ import { createComponent as _$createComponent, mergeProps as _$mergeProps } from "@alloy-js/core/jsx-runtime";
2
+ import { createContext, splitProps, useContext } from "@alloy-js/core";
3
+ import * as py from "@alloy-js/python";
4
+ import { useTsp } from "../../../core/index.js";
5
+ import { buildParameterDescriptors, getReturnType } from "../../utils/operation.js";
6
+ import { DocElement } from "../doc-element/doc-element.js";
7
+ import { TypeExpression } from "../type-expression/type-expression.js";
8
+ export const MethodContext = createContext(undefined);
9
+ export const MethodProvider = MethodContext.Provider;
10
+ /**
11
+ * Get the method component based on the resolved method type.
12
+ * We prioritize the methodType prop provided in the Method component,
13
+ * and then the one provided in the context, and then we default to "method".
14
+ */
15
+ function getResolvedMethodType(props) {
16
+ const ctxMethodType = useContext(MethodContext);
17
+ const propMethodType = "methodType" in props ? props.methodType : undefined;
18
+ return propMethodType ?? ctxMethodType ?? "method";
19
+ }
20
+
21
+ /**
22
+ * A Python class method. Pass the `type` prop to create the
23
+ * method by converting from a TypeSpec Operation. Any other props
24
+ * provided will take precedence.
25
+ */
26
+ export function Method(props) {
27
+ const {
28
+ $
29
+ } = useTsp();
30
+ const isTypeSpecTyped = "type" in props;
31
+ const type = isTypeSpecTyped ? props.type : undefined;
32
+ const docSource = props.doc ?? (type ? $.type.getDoc(type) : undefined);
33
+ const docElement = docSource ? _$createComponent(DocElement, {
34
+ doc: docSource,
35
+ component: py.MethodDoc
36
+ }) : undefined;
37
+ const resolvedMethodType = getResolvedMethodType(props);
38
+ const MethodComponent = resolvedMethodType === "static" ? py.StaticMethodDeclaration : resolvedMethodType === "class" ? py.ClassMethodDeclaration : py.MethodDeclaration;
39
+
40
+ // Default to abstract when deriving from a TypeSpec operation (`type` prop present),
41
+ // unless explicitly overridden by props.abstract === false
42
+ const abstractFlag = (() => {
43
+ const explicit = props.abstract;
44
+ return explicit ?? (!isTypeSpecTyped ? false : undefined);
45
+ })();
46
+
47
+ /**
48
+ * If the method does not come from the Typespec class declaration, return a standard Python method declaration.
49
+ * Have in mind that, with that, we lose some of the TypeSpec class declaration overrides.
50
+ */
51
+ if (!isTypeSpecTyped) {
52
+ return _$createComponent(MethodComponent, _$mergeProps(props, {
53
+ doc: docElement,
54
+ abstract: abstractFlag
55
+ }));
56
+ }
57
+ const [efProps, updateProps, forwardProps] = splitProps(props, ["type"], ["returnType", "parameters"]);
58
+ const name = props.name ?? py.usePythonNamePolicy().getName(efProps.type.name, "function");
59
+ const returnType = props.returnType ?? _$createComponent(TypeExpression, {
60
+ get type() {
61
+ return getReturnType(efProps.type);
62
+ }
63
+ });
64
+ const allParameters = buildParameterDescriptors(efProps.type.parameters, {
65
+ params: props.parameters,
66
+ replaceParameters: props.replaceParameters
67
+ });
68
+ return [_$createComponent(MethodComponent, _$mergeProps(forwardProps, updateProps, {
69
+ name: name,
70
+ returnType: returnType,
71
+ parameters: allParameters,
72
+ doc: docElement,
73
+ abstract: abstractFlag
74
+ }))];
75
+ }
76
+ //# sourceMappingURL=class-method.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContext","splitProps","useContext","py","useTsp","buildParameterDescriptors","getReturnType","DocElement","TypeExpression","MethodContext","undefined","MethodProvider","Provider","getResolvedMethodType","props","ctxMethodType","propMethodType","methodType","Method","$","isTypeSpecTyped","type","docSource","doc","getDoc","docElement","_$createComponent","component","MethodDoc","resolvedMethodType","MethodComponent","StaticMethodDeclaration","ClassMethodDeclaration","MethodDeclaration","abstractFlag","explicit","abstract","_$mergeProps","efProps","updateProps","forwardProps","name","usePythonNamePolicy","getName","returnType","allParameters","parameters","params","replaceParameters"],"sources":["../../../../../src/python/components/class-declaration/class-method.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=class-method.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"class-method.test.d.ts","sourceRoot":"","sources":["../../../../../src/python/components/class-declaration/class-method.test.tsx"],"names":[],"mappings":""}