@alloy-js/python 0.4.0-dev.2 → 0.4.0-dev.5

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 (258) hide show
  1. package/dist/dev/src/builtins/python.js +30 -0
  2. package/dist/dev/src/builtins/python.js.map +1 -0
  3. package/dist/dev/src/components/Atom.js +122 -0
  4. package/dist/dev/src/components/Atom.js.map +1 -0
  5. package/dist/dev/src/components/CallSignature.js +195 -0
  6. package/dist/dev/src/components/CallSignature.js.map +1 -0
  7. package/dist/dev/src/components/ClassDeclaration.js +112 -0
  8. package/dist/dev/src/components/ClassDeclaration.js.map +1 -0
  9. package/dist/dev/src/components/ClassInstantiation.js +40 -0
  10. package/dist/dev/src/components/ClassInstantiation.js.map +1 -0
  11. package/dist/dev/src/components/ClassMethodDeclaration.js +40 -0
  12. package/dist/dev/src/components/ClassMethodDeclaration.js.map +1 -0
  13. package/dist/dev/src/components/ConstructorDeclaration.js +39 -0
  14. package/dist/dev/src/components/ConstructorDeclaration.js.map +1 -0
  15. package/dist/dev/src/components/DataclassDeclaration.js +177 -0
  16. package/dist/dev/src/components/DataclassDeclaration.js.map +1 -0
  17. package/dist/dev/src/components/Declaration.js +31 -0
  18. package/dist/dev/src/components/Declaration.js.map +1 -0
  19. package/dist/dev/src/components/DunderMethodDeclaration.js +33 -0
  20. package/dist/dev/src/components/DunderMethodDeclaration.js.map +1 -0
  21. package/dist/dev/src/components/EnumDeclaration.js +259 -0
  22. package/dist/dev/src/components/EnumDeclaration.js.map +1 -0
  23. package/dist/dev/src/components/EnumMember.js +95 -0
  24. package/dist/dev/src/components/EnumMember.js.map +1 -0
  25. package/dist/dev/src/components/FunctionBase.js +130 -0
  26. package/dist/dev/src/components/FunctionBase.js.map +1 -0
  27. package/dist/dev/src/components/FunctionCallExpression.js +53 -0
  28. package/dist/dev/src/components/FunctionCallExpression.js.map +1 -0
  29. package/dist/dev/src/components/FunctionDeclaration.js +45 -0
  30. package/dist/dev/src/components/FunctionDeclaration.js.map +1 -0
  31. package/dist/dev/src/components/FutureStatement.js +31 -0
  32. package/dist/dev/src/components/FutureStatement.js.map +1 -0
  33. package/dist/dev/src/components/ImportStatement.js +167 -0
  34. package/dist/dev/src/components/ImportStatement.js.map +1 -0
  35. package/dist/dev/src/components/LexicalScope.js +26 -0
  36. package/dist/dev/src/components/LexicalScope.js.map +1 -0
  37. package/dist/dev/src/components/MemberExpression.js +290 -0
  38. package/dist/dev/src/components/MemberExpression.js.map +1 -0
  39. package/dist/dev/src/components/MemberScope.js +23 -0
  40. package/dist/dev/src/components/MemberScope.js.map +1 -0
  41. package/dist/dev/src/components/MethodBase.js +40 -0
  42. package/dist/dev/src/components/MethodBase.js.map +1 -0
  43. package/dist/dev/src/components/MethodDeclaration.js +38 -0
  44. package/dist/dev/src/components/MethodDeclaration.js.map +1 -0
  45. package/dist/dev/src/components/PropertyDeclaration.js +287 -0
  46. package/dist/dev/src/components/PropertyDeclaration.js.map +1 -0
  47. package/dist/dev/src/components/PyDoc.js +1478 -0
  48. package/dist/dev/src/components/PyDoc.js.map +1 -0
  49. package/dist/dev/src/components/PythonBlock.js +35 -0
  50. package/dist/dev/src/components/PythonBlock.js.map +1 -0
  51. package/dist/dev/src/components/Reference.js +23 -0
  52. package/dist/dev/src/components/Reference.js.map +1 -0
  53. package/dist/dev/src/components/SourceFile.js +385 -0
  54. package/dist/dev/src/components/SourceFile.js.map +1 -0
  55. package/dist/dev/src/components/StatementList.js +34 -0
  56. package/dist/dev/src/components/StatementList.js.map +1 -0
  57. package/dist/dev/src/components/StaticMethodDeclaration.js +40 -0
  58. package/dist/dev/src/components/StaticMethodDeclaration.js.map +1 -0
  59. package/dist/dev/src/components/TypeArguments.js +22 -0
  60. package/dist/dev/src/components/TypeArguments.js.map +1 -0
  61. package/dist/dev/src/components/TypeRefContext.js +33 -0
  62. package/dist/dev/src/components/TypeRefContext.js.map +1 -0
  63. package/dist/dev/src/components/TypeReference.js +67 -0
  64. package/dist/dev/src/components/TypeReference.js.map +1 -0
  65. package/dist/dev/src/components/UnionTypeExpression.js +57 -0
  66. package/dist/dev/src/components/UnionTypeExpression.js.map +1 -0
  67. package/dist/dev/src/components/VariableDeclaration.js +150 -0
  68. package/dist/dev/src/components/VariableDeclaration.js.map +1 -0
  69. package/dist/dev/src/components/index.js +32 -0
  70. package/dist/dev/src/components/index.js.map +1 -0
  71. package/dist/dev/src/context/index.js +2 -0
  72. package/dist/dev/src/context/index.js.map +1 -0
  73. package/dist/dev/src/context/type-ref-context.js +17 -0
  74. package/dist/dev/src/context/type-ref-context.js.map +1 -0
  75. package/dist/dev/src/create-module.js +64 -0
  76. package/dist/dev/src/create-module.js.map +1 -0
  77. package/dist/dev/src/index.js +8 -0
  78. package/dist/dev/src/index.js.map +1 -0
  79. package/dist/dev/src/name-conflict-resolver.js +8 -0
  80. package/dist/dev/src/name-conflict-resolver.js.map +1 -0
  81. package/dist/dev/src/name-policy.js +48 -0
  82. package/dist/dev/src/name-policy.js.map +1 -0
  83. package/dist/dev/src/parameter-descriptor.js +8 -0
  84. package/dist/dev/src/parameter-descriptor.js.map +1 -0
  85. package/dist/dev/src/symbol-creation.js +58 -0
  86. package/dist/dev/src/symbol-creation.js.map +1 -0
  87. package/dist/dev/src/symbols/factories.js +28 -0
  88. package/dist/dev/src/symbols/factories.js.map +1 -0
  89. package/dist/dev/src/symbols/index.js +8 -0
  90. package/dist/dev/src/symbols/index.js.map +1 -0
  91. package/dist/dev/src/symbols/python-lexical-scope.js +15 -0
  92. package/dist/dev/src/symbols/python-lexical-scope.js.map +1 -0
  93. package/dist/dev/src/symbols/python-member-scope.js +7 -0
  94. package/dist/dev/src/symbols/python-member-scope.js.map +1 -0
  95. package/dist/dev/src/symbols/python-module-scope.js +86 -0
  96. package/dist/dev/src/symbols/python-module-scope.js.map +1 -0
  97. package/dist/dev/src/symbols/python-output-symbol.js +73 -0
  98. package/dist/dev/src/symbols/python-output-symbol.js.map +1 -0
  99. package/dist/dev/src/symbols/reference.js +87 -0
  100. package/dist/dev/src/symbols/reference.js.map +1 -0
  101. package/dist/dev/src/symbols/scopes.js +13 -0
  102. package/dist/dev/src/symbols/scopes.js.map +1 -0
  103. package/dist/dev/src/utils.js +13 -0
  104. package/dist/dev/src/utils.js.map +1 -0
  105. package/dist/dev/test/callsignatures.test.js +482 -0
  106. package/dist/dev/test/callsignatures.test.js.map +1 -0
  107. package/dist/dev/test/class-method-declaration.test.js +85 -0
  108. package/dist/dev/test/class-method-declaration.test.js.map +1 -0
  109. package/dist/dev/test/classdeclarations.test.js +654 -0
  110. package/dist/dev/test/classdeclarations.test.js.map +1 -0
  111. package/dist/dev/test/classinstantiations.test.js +281 -0
  112. package/dist/dev/test/classinstantiations.test.js.map +1 -0
  113. package/dist/dev/test/constructordeclaration.test.js +86 -0
  114. package/dist/dev/test/constructordeclaration.test.js.map +1 -0
  115. package/dist/dev/test/dataclassdeclarations.test.js +1068 -0
  116. package/dist/dev/test/dataclassdeclarations.test.js.map +1 -0
  117. package/dist/dev/test/dundermethoddeclaration.test.js +93 -0
  118. package/dist/dev/test/dundermethoddeclaration.test.js.map +1 -0
  119. package/dist/dev/test/enums.test.js +263 -0
  120. package/dist/dev/test/enums.test.js.map +1 -0
  121. package/dist/dev/test/externals.test.js +307 -0
  122. package/dist/dev/test/externals.test.js.map +1 -0
  123. package/dist/dev/test/factories.test.js +122 -0
  124. package/dist/dev/test/factories.test.js.map +1 -0
  125. package/dist/dev/test/functioncallexpressions.test.js +257 -0
  126. package/dist/dev/test/functioncallexpressions.test.js.map +1 -0
  127. package/dist/dev/test/functiondeclaration.test.js +817 -0
  128. package/dist/dev/test/functiondeclaration.test.js.map +1 -0
  129. package/dist/dev/test/imports.test.js +372 -0
  130. package/dist/dev/test/imports.test.js.map +1 -0
  131. package/dist/dev/test/memberexpressions.test.js +1668 -0
  132. package/dist/dev/test/memberexpressions.test.js.map +1 -0
  133. package/dist/dev/test/methoddeclaration.test.js +344 -0
  134. package/dist/dev/test/methoddeclaration.test.js.map +1 -0
  135. package/dist/dev/test/namepolicies.test.js +154 -0
  136. package/dist/dev/test/namepolicies.test.js.map +1 -0
  137. package/dist/dev/test/propertydeclaration.test.js +354 -0
  138. package/dist/dev/test/propertydeclaration.test.js.map +1 -0
  139. package/dist/dev/test/pydocs.test.js +1675 -0
  140. package/dist/dev/test/pydocs.test.js.map +1 -0
  141. package/dist/dev/test/references.test.js +66 -0
  142. package/dist/dev/test/references.test.js.map +1 -0
  143. package/dist/dev/test/sourcefiles.test.js +1802 -0
  144. package/dist/dev/test/sourcefiles.test.js.map +1 -0
  145. package/dist/dev/test/staticmethoddeclaration.test.js +85 -0
  146. package/dist/dev/test/staticmethoddeclaration.test.js.map +1 -0
  147. package/dist/dev/test/type-checking-imports.test.js +617 -0
  148. package/dist/dev/test/type-checking-imports.test.js.map +1 -0
  149. package/dist/dev/test/typereference.test.js +79 -0
  150. package/dist/dev/test/typereference.test.js.map +1 -0
  151. package/dist/dev/test/uniontypeexpression.test.js +307 -0
  152. package/dist/dev/test/uniontypeexpression.test.js.map +1 -0
  153. package/dist/dev/test/utils.js +100 -0
  154. package/dist/dev/test/utils.js.map +1 -0
  155. package/dist/dev/test/values.test.js +182 -0
  156. package/dist/dev/test/values.test.js.map +1 -0
  157. package/dist/dev/test/variables.test.js +363 -0
  158. package/dist/dev/test/variables.test.js.map +1 -0
  159. package/dist/src/components/CallSignature.d.ts.map +1 -1
  160. package/dist/src/components/CallSignature.js +12 -3
  161. package/dist/src/components/CallSignature.js.map +1 -1
  162. package/dist/src/components/ImportStatement.d.ts +12 -0
  163. package/dist/src/components/ImportStatement.d.ts.map +1 -1
  164. package/dist/src/components/ImportStatement.js +47 -5
  165. package/dist/src/components/ImportStatement.js.map +1 -1
  166. package/dist/src/components/MemberExpression.d.ts +1 -1
  167. package/dist/src/components/MemberExpression.d.ts.map +1 -1
  168. package/dist/src/components/MemberExpression.js +98 -180
  169. package/dist/src/components/MemberExpression.js.map +1 -1
  170. package/dist/src/components/Reference.d.ts.map +1 -1
  171. package/dist/src/components/Reference.js +5 -1
  172. package/dist/src/components/Reference.js.map +1 -1
  173. package/dist/src/components/SourceFile.d.ts +1 -1
  174. package/dist/src/components/SourceFile.d.ts.map +1 -1
  175. package/dist/src/components/SourceFile.js +46 -7
  176. package/dist/src/components/SourceFile.js.map +1 -1
  177. package/dist/src/components/TypeRefContext.d.ts +26 -0
  178. package/dist/src/components/TypeRefContext.d.ts.map +1 -0
  179. package/dist/src/components/TypeRefContext.js +29 -0
  180. package/dist/src/components/TypeRefContext.js.map +1 -0
  181. package/dist/src/components/TypeReference.d.ts +5 -0
  182. package/dist/src/components/TypeReference.d.ts.map +1 -1
  183. package/dist/src/components/TypeReference.js +19 -9
  184. package/dist/src/components/TypeReference.js.map +1 -1
  185. package/dist/src/components/VariableDeclaration.d.ts.map +1 -1
  186. package/dist/src/components/VariableDeclaration.js +7 -2
  187. package/dist/src/components/VariableDeclaration.js.map +1 -1
  188. package/dist/src/components/index.d.ts +1 -1
  189. package/dist/src/components/index.d.ts.map +1 -1
  190. package/dist/src/components/index.js +1 -1
  191. package/dist/src/components/index.js.map +1 -1
  192. package/dist/src/context/index.d.ts +2 -0
  193. package/dist/src/context/index.d.ts.map +1 -0
  194. package/dist/src/context/index.js +2 -0
  195. package/dist/src/context/index.js.map +1 -0
  196. package/dist/src/context/type-ref-context.d.ts +13 -0
  197. package/dist/src/context/type-ref-context.d.ts.map +1 -0
  198. package/dist/src/context/type-ref-context.js +17 -0
  199. package/dist/src/context/type-ref-context.js.map +1 -0
  200. package/dist/src/symbols/python-module-scope.d.ts +13 -1
  201. package/dist/src/symbols/python-module-scope.d.ts.map +1 -1
  202. package/dist/src/symbols/python-module-scope.js +36 -2
  203. package/dist/src/symbols/python-module-scope.js.map +1 -1
  204. package/dist/src/symbols/python-output-symbol.d.ts +11 -0
  205. package/dist/src/symbols/python-output-symbol.d.ts.map +1 -1
  206. package/dist/src/symbols/python-output-symbol.js +26 -2
  207. package/dist/src/symbols/python-output-symbol.js.map +1 -1
  208. package/dist/src/symbols/reference.d.ts +8 -1
  209. package/dist/src/symbols/reference.d.ts.map +1 -1
  210. package/dist/src/symbols/reference.js +4 -2
  211. package/dist/src/symbols/reference.js.map +1 -1
  212. package/dist/test/dataclassdeclarations.test.js +5 -2
  213. package/dist/test/dataclassdeclarations.test.js.map +1 -1
  214. package/dist/test/externals.test.js +8 -2
  215. package/dist/test/externals.test.js.map +1 -1
  216. package/dist/test/functiondeclaration.test.js +6 -3
  217. package/dist/test/functiondeclaration.test.js.map +1 -1
  218. package/dist/test/imports.test.js +3 -3
  219. package/dist/test/imports.test.js.map +1 -1
  220. package/dist/test/references.test.js +1 -1
  221. package/dist/test/references.test.js.map +1 -1
  222. package/dist/test/sourcefiles.test.js +26 -26
  223. package/dist/test/sourcefiles.test.js.map +1 -1
  224. package/dist/test/type-checking-imports.test.d.ts +2 -0
  225. package/dist/test/type-checking-imports.test.d.ts.map +1 -0
  226. package/dist/test/type-checking-imports.test.js +437 -0
  227. package/dist/test/type-checking-imports.test.js.map +1 -0
  228. package/dist/test/uniontypeexpression.test.js +4 -1
  229. package/dist/test/uniontypeexpression.test.js.map +1 -1
  230. package/dist/test/variables.test.js +4 -1
  231. package/dist/test/variables.test.js.map +1 -1
  232. package/dist/tsconfig.tsbuildinfo +1 -1
  233. package/package.json +6 -4
  234. package/src/components/CallSignature.tsx +6 -2
  235. package/src/components/ImportStatement.tsx +52 -5
  236. package/src/components/MemberExpression.tsx +174 -298
  237. package/src/components/Reference.tsx +3 -1
  238. package/src/components/SourceFile.tsx +44 -8
  239. package/src/components/TypeRefContext.tsx +36 -0
  240. package/src/components/TypeReference.tsx +15 -7
  241. package/src/components/VariableDeclaration.tsx +5 -1
  242. package/src/components/index.ts +1 -1
  243. package/src/context/index.ts +1 -0
  244. package/src/context/type-ref-context.tsx +16 -0
  245. package/src/symbols/python-module-scope.ts +55 -2
  246. package/src/symbols/python-output-symbol.ts +32 -1
  247. package/src/symbols/reference.tsx +10 -0
  248. package/temp/api.json +443 -338
  249. package/test/dataclassdeclarations.test.tsx +8 -2
  250. package/test/externals.test.tsx +8 -2
  251. package/test/functiondeclaration.test.tsx +6 -3
  252. package/test/imports.test.tsx +6 -6
  253. package/test/references.test.tsx +1 -1
  254. package/test/sourcefiles.test.tsx +13 -13
  255. package/test/type-checking-imports.test.tsx +363 -0
  256. package/test/uniontypeexpression.test.tsx +4 -1
  257. package/test/variables.test.tsx +4 -1
  258. package/vitest.config.ts +8 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Prose","namekey","refkey","d","describe","expect","it","dataclassesModule","py","assertFileContents","toSourceText","toSourceTextMultiple","doc","_$createComponent","ClassDoc","description","children","fileName","import","meta","url","lineNumber","columnNumber","res","SourceFile","path","DataclassDeclaration","name","externals","toRenderTo","VariableDeclaration","instanceVariable","omitNone","type","ignoreNamePolicy","KW_ONLY","initializer","frozen","slots","kwOnly","init","repr","eq","order","unsafeHash","matchArgs","weakrefSlot","toThrowError","DunderMethodDeclaration","Wrapper","bases","not","toThrow","userRefkey","FunctionDeclaration","returnType","ClassInstantiation","target","args","_$createIntrinsic"],"sources":["../../../test/dataclassdeclarations.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,93 @@
1
+ import { createComponent as _$createComponent } from "@alloy-js/core/jsx-runtime";
2
+ import { d } from "@alloy-js/core/testing";
3
+ import { describe, expect, it } from "vitest";
4
+ import * as py from "../src/index.js";
5
+ import { toSourceText } from "./utils.js";
6
+ describe("Dunder/Constructor Declarations", () => {
7
+ it("renders dunder methods with parameters", () => {
8
+ const parameters = [{
9
+ name: "x",
10
+ type: "int"
11
+ }];
12
+ const decl = _$createComponent(py.ClassDeclaration, {
13
+ name: "MyClass",
14
+ get children() {
15
+ return _$createComponent(py.StatementList, {
16
+ get children() {
17
+ return [_$createComponent(py.DunderMethodDeclaration, {
18
+ name: "__init__",
19
+ parameters: parameters,
20
+ children: "self.attribute = \"value\""
21
+ }, {
22
+ fileName: import.meta.url,
23
+ lineNumber: 12,
24
+ columnNumber: 11
25
+ }), _$createComponent(py.DunderMethodDeclaration, {
26
+ name: "__repr__",
27
+ parameters: parameters,
28
+ children: "return \"MyClass\""
29
+ }, {
30
+ fileName: import.meta.url,
31
+ lineNumber: 15,
32
+ columnNumber: 11
33
+ })];
34
+ }
35
+ }, {
36
+ fileName: import.meta.url,
37
+ lineNumber: 11,
38
+ columnNumber: 9
39
+ });
40
+ }
41
+ }, {
42
+ fileName: import.meta.url,
43
+ lineNumber: 10,
44
+ columnNumber: 7
45
+ });
46
+ expect(toSourceText([decl])).toBe(d`
47
+ class MyClass:
48
+ def __init__(self, x: int):
49
+ self.attribute = "value"
50
+
51
+ def __repr__(self, x: int):
52
+ return "MyClass"
53
+
54
+
55
+ `);
56
+ });
57
+ it("renders dunder methods __new__", () => {
58
+ const decl = _$createComponent(py.ClassDeclaration, {
59
+ name: "MyClass",
60
+ get children() {
61
+ return _$createComponent(py.StatementList, {
62
+ get children() {
63
+ return _$createComponent(py.ConstructorDeclaration, {
64
+ args: true,
65
+ kwargs: true,
66
+ children: "pass"
67
+ }, {
68
+ fileName: import.meta.url,
69
+ lineNumber: 38,
70
+ columnNumber: 11
71
+ });
72
+ }
73
+ }, {
74
+ fileName: import.meta.url,
75
+ lineNumber: 37,
76
+ columnNumber: 9
77
+ });
78
+ }
79
+ }, {
80
+ fileName: import.meta.url,
81
+ lineNumber: 36,
82
+ columnNumber: 7
83
+ });
84
+ expect(toSourceText([decl])).toBe(d`
85
+ class MyClass:
86
+ def __new__(cls, *args, **kwargs):
87
+ pass
88
+
89
+
90
+ `);
91
+ });
92
+ });
93
+ //# sourceMappingURL=dundermethoddeclaration.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["d","describe","expect","it","py","toSourceText","parameters","name","type","decl","_$createComponent","ClassDeclaration","children","StatementList","DunderMethodDeclaration","fileName","import","meta","url","lineNumber","columnNumber","toBe","ConstructorDeclaration","args","kwargs"],"sources":["../../../test/dundermethoddeclaration.test.tsx"],"sourcesContent":[null],"mappings":";AAAA,SAASA,CAAC,QAAQ,wBAAwB;AAC1C,SAASC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,QAAQ;AAC7C,OAAO,KAAKC,EAAE,MAAM,iBAAiB;AACrC,SAASC,YAAY,QAAQ,YAAY;AAEzCJ,QAAQ,CAAC,iCAAiC,EAAE,MAAM;EAChDE,EAAE,CAAC,wCAAwC,EAAE,MAAM;IACjD,MAAMG,UAAU,GAAG,CAAC;MAAEC,IAAI,EAAE,GAAG;MAAEC,IAAI,EAAE;IAAM,CAAC,CAAC;IAC/C,MAAMC,IAAI,GAAAC,iBAAA,CACPN,EAAE,CAACO,gBAAgB;MAACJ,IAAI;MAAA,IAAAK,SAAA;QAAA,OAAAF,iBAAA,CACtBN,EAAE,CAACS,aAAa;UAAA,IAAAD,SAAA;YAAA,QAAAF,iBAAA,CACdN,EAAE,CAACU,uBAAuB;cAACP,IAAI;cAAYD,UAAU,EAAEA,UAAU;cAAAM,QAAA;YAAA;cAAAG,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;cAAAC,UAAA;cAAAC,YAAA;YAAA,IAAAV,iBAAA,CAGjEN,EAAE,CAACU,uBAAuB;cAACP,IAAI;cAAYD,UAAU,EAAEA,UAAU;cAAAM,QAAA;YAAA;cAAAG,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;cAAAC,UAAA;cAAAC,YAAA;YAAA;UAAA;QAAA;UAAAL,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;UAAAC,UAAA;UAAAC,YAAA;QAAA;MAAA;IAAA;MAAAL,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA,EAKvE;IAEDlB,MAAM,CAACG,YAAY,CAAC,CAACI,IAAI,CAAC,CAAC,CAAC,CAACY,IAAI,CAACrB,CAAC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,CAAC;EACJ,CAAC,CAAC;EAEFG,EAAE,CAAC,gCAAgC,EAAE,MAAM;IACzC,MAAMM,IAAI,GAAAC,iBAAA,CACPN,EAAE,CAACO,gBAAgB;MAACJ,IAAI;MAAA,IAAAK,SAAA;QAAA,OAAAF,iBAAA,CACtBN,EAAE,CAACS,aAAa;UAAA,IAAAD,SAAA;YAAA,OAAAF,iBAAA,CACdN,EAAE,CAACkB,sBAAsB;cAACC,IAAI;cAACC,MAAM;cAAAZ,QAAA;YAAA;cAAAG,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;cAAAC,UAAA;cAAAC,YAAA;YAAA;UAAA;QAAA;UAAAL,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;UAAAC,UAAA;UAAAC,YAAA;QAAA;MAAA;IAAA;MAAAL,QAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAC,GAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA,EAK3C;IAEDlB,MAAM,CAACG,YAAY,CAAC,CAACI,IAAI,CAAC,CAAC,CAAC,CAACY,IAAI,CAACrB,CAAC;AACvC;AACA;AACA;AACA;AACA;AACA,KAAK,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,263 @@
1
+ import { createComponent as _$createComponent } from "@alloy-js/core/jsx-runtime";
2
+ import { refkey } from "@alloy-js/core";
3
+ import { d } from "@alloy-js/core/testing";
4
+ import { describe, expect, it } from "vitest";
5
+ import { enumModule } from "../src/builtins/python.js";
6
+ import * as py from "../src/index.js";
7
+ import { toSourceText } from "./utils.js";
8
+ describe("Python Enum", () => {
9
+ it("class enum with explicit values", () => {
10
+ const result = toSourceText([_$createComponent(py.ClassEnumDeclaration, {
11
+ name: "Color",
12
+ baseType: "IntEnum",
13
+ members: [{
14
+ name: "RED",
15
+ value: "1"
16
+ }, {
17
+ name: "GREEN",
18
+ value: "2"
19
+ }, {
20
+ name: "BLUE",
21
+ value: "3"
22
+ }]
23
+ }, {
24
+ fileName: import.meta.url,
25
+ lineNumber: 12,
26
+ columnNumber: 9
27
+ })], {
28
+ externals: [enumModule]
29
+ });
30
+ const expected = d`
31
+ from enum import IntEnum
32
+
33
+
34
+ class Color(IntEnum):
35
+ RED = 1
36
+ GREEN = 2
37
+ BLUE = 3
38
+
39
+
40
+ `;
41
+ expect(result).toRenderTo(expected);
42
+ });
43
+ it("class enum with jsValues", () => {
44
+ const result = toSourceText([_$createComponent(py.ClassEnumDeclaration, {
45
+ name: "Color",
46
+ baseType: "IntEnum",
47
+ members: [{
48
+ name: "RED",
49
+ jsValue: "1"
50
+ }, {
51
+ name: "GREEN",
52
+ jsValue: 2
53
+ }, {
54
+ name: "BLUE",
55
+ jsValue: "3"
56
+ }]
57
+ }, {
58
+ fileName: import.meta.url,
59
+ lineNumber: 41,
60
+ columnNumber: 9
61
+ })], {
62
+ externals: [enumModule]
63
+ });
64
+ const expected = d`
65
+ from enum import IntEnum
66
+
67
+
68
+ class Color(IntEnum):
69
+ RED = "1"
70
+ GREEN = 2
71
+ BLUE = "3"
72
+
73
+
74
+ `;
75
+ expect(result).toRenderTo(expected);
76
+ });
77
+ it("class enum with a refkey as jsValue", () => {
78
+ const result = toSourceText([_$createComponent(py.StatementList, {
79
+ get children() {
80
+ return [_$createComponent(py.ClassDeclaration, {
81
+ name: "Dog",
82
+ get refkey() {
83
+ return refkey("Dog");
84
+ }
85
+ }, {
86
+ fileName: import.meta.url,
87
+ lineNumber: 71,
88
+ columnNumber: 11
89
+ }), _$createComponent(py.ClassDeclaration, {
90
+ name: "Cat",
91
+ get refkey() {
92
+ return refkey("Cat");
93
+ }
94
+ }, {
95
+ fileName: import.meta.url,
96
+ lineNumber: 72,
97
+ columnNumber: 11
98
+ }), _$createComponent(py.ClassEnumDeclaration, {
99
+ name: "Animal",
100
+ baseType: "Enum",
101
+ get members() {
102
+ return [{
103
+ name: "DOG",
104
+ value: refkey("Dog")
105
+ }, {
106
+ name: "CAT",
107
+ value: refkey("Cat")
108
+ }];
109
+ }
110
+ }, {
111
+ fileName: import.meta.url,
112
+ lineNumber: 73,
113
+ columnNumber: 11
114
+ })];
115
+ }
116
+ }, {
117
+ fileName: import.meta.url,
118
+ lineNumber: 70,
119
+ columnNumber: 9
120
+ })], {
121
+ externals: [enumModule]
122
+ });
123
+ const expected = d`
124
+ from enum import Enum
125
+
126
+
127
+ class Dog:
128
+ pass
129
+
130
+ class Cat:
131
+ pass
132
+
133
+ class Animal(Enum):
134
+ DOG = Dog
135
+ CAT = Cat
136
+
137
+
138
+ `;
139
+ expect(result).toRenderTo(expected);
140
+ });
141
+ it("class enum with auto() values", () => {
142
+ const result = toSourceText([_$createComponent(py.ClassEnumDeclaration, {
143
+ name: "Animal",
144
+ auto: true,
145
+ members: [{
146
+ name: "DOG"
147
+ }, {
148
+ name: "CAT"
149
+ }, {
150
+ name: "RABBIT"
151
+ }]
152
+ }, {
153
+ fileName: import.meta.url,
154
+ lineNumber: 107,
155
+ columnNumber: 9
156
+ })], {
157
+ externals: [enumModule]
158
+ });
159
+ const expected = d`
160
+ from enum import auto
161
+ from enum import Enum
162
+
163
+
164
+ class Animal(Enum):
165
+ DOG = auto()
166
+ CAT = auto()
167
+ RABBIT = auto()
168
+
169
+
170
+ `;
171
+ expect(result).toRenderTo(expected);
172
+ });
173
+ it("class enum with mixed manual and auto() values", () => {
174
+ const result = toSourceText([_$createComponent(py.ClassEnumDeclaration, {
175
+ name: "Permission",
176
+ baseType: "Flag",
177
+ auto: true,
178
+ members: [{
179
+ name: "READ",
180
+ value: 1
181
+ }, {
182
+ name: "WRITE"
183
+ }, {
184
+ name: "EXECUTE"
185
+ }]
186
+ }, {
187
+ fileName: import.meta.url,
188
+ lineNumber: 133,
189
+ columnNumber: 9
190
+ })], {
191
+ externals: [enumModule]
192
+ });
193
+ const expected = d`
194
+ from enum import auto
195
+ from enum import Flag
196
+
197
+
198
+ class Permission(Flag):
199
+ READ = 1
200
+ WRITE = auto()
201
+ EXECUTE = auto()
202
+
203
+
204
+ `;
205
+ expect(result).toRenderTo(expected);
206
+ });
207
+ it("functional enum with list", () => {
208
+ const result = toSourceText([_$createComponent(py.FunctionalEnumDeclaration, {
209
+ name: "Direction",
210
+ members: [{
211
+ name: "NORTH"
212
+ }, {
213
+ name: "SOUTH"
214
+ }, {
215
+ name: "EAST"
216
+ }, {
217
+ name: "WEST"
218
+ }]
219
+ }, {
220
+ fileName: import.meta.url,
221
+ lineNumber: 165,
222
+ columnNumber: 9
223
+ })], {
224
+ externals: [enumModule]
225
+ });
226
+ const expected = d`
227
+ from enum import Enum
228
+
229
+
230
+ Direction = Enum('Direction', ['NORTH', 'SOUTH', 'EAST', 'WEST'])
231
+ `;
232
+ expect(result).toRenderTo(expected);
233
+ });
234
+ it("functional enum with mapping", () => {
235
+ const result = toSourceText([_$createComponent(py.FunctionalEnumDeclaration, {
236
+ name: "Priority",
237
+ members: [{
238
+ name: "HIGH",
239
+ value: 1
240
+ }, {
241
+ name: "MEDIUM",
242
+ value: 2
243
+ }, {
244
+ name: "LOW",
245
+ value: 3
246
+ }]
247
+ }, {
248
+ fileName: import.meta.url,
249
+ lineNumber: 189,
250
+ columnNumber: 9
251
+ })], {
252
+ externals: [enumModule]
253
+ });
254
+ const expected = d`
255
+ from enum import Enum
256
+
257
+
258
+ Priority = Enum('Priority', {'HIGH' : 1, 'MEDIUM' : 2, 'LOW' : 3})
259
+ `;
260
+ expect(result).toRenderTo(expected);
261
+ });
262
+ });
263
+ //# sourceMappingURL=enums.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["refkey","d","describe","expect","it","enumModule","py","toSourceText","result","_$createComponent","ClassEnumDeclaration","name","baseType","members","value","fileName","import","meta","url","lineNumber","columnNumber","externals","expected","toRenderTo","jsValue","StatementList","children","ClassDeclaration","auto","FunctionalEnumDeclaration"],"sources":["../../../test/enums.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}