@alloy-js/python 0.4.0-dev.3 → 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 (253) 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 +45 -3
  165. package/dist/src/components/ImportStatement.js.map +1 -1
  166. package/dist/src/components/Reference.d.ts.map +1 -1
  167. package/dist/src/components/Reference.js +5 -1
  168. package/dist/src/components/Reference.js.map +1 -1
  169. package/dist/src/components/SourceFile.d.ts +1 -1
  170. package/dist/src/components/SourceFile.d.ts.map +1 -1
  171. package/dist/src/components/SourceFile.js +46 -7
  172. package/dist/src/components/SourceFile.js.map +1 -1
  173. package/dist/src/components/TypeRefContext.d.ts +26 -0
  174. package/dist/src/components/TypeRefContext.d.ts.map +1 -0
  175. package/dist/src/components/TypeRefContext.js +29 -0
  176. package/dist/src/components/TypeRefContext.js.map +1 -0
  177. package/dist/src/components/TypeReference.d.ts +5 -0
  178. package/dist/src/components/TypeReference.d.ts.map +1 -1
  179. package/dist/src/components/TypeReference.js +19 -9
  180. package/dist/src/components/TypeReference.js.map +1 -1
  181. package/dist/src/components/VariableDeclaration.d.ts.map +1 -1
  182. package/dist/src/components/VariableDeclaration.js +7 -2
  183. package/dist/src/components/VariableDeclaration.js.map +1 -1
  184. package/dist/src/components/index.d.ts +1 -1
  185. package/dist/src/components/index.d.ts.map +1 -1
  186. package/dist/src/components/index.js +1 -1
  187. package/dist/src/components/index.js.map +1 -1
  188. package/dist/src/context/index.d.ts +2 -0
  189. package/dist/src/context/index.d.ts.map +1 -0
  190. package/dist/src/context/index.js +2 -0
  191. package/dist/src/context/index.js.map +1 -0
  192. package/dist/src/context/type-ref-context.d.ts +13 -0
  193. package/dist/src/context/type-ref-context.d.ts.map +1 -0
  194. package/dist/src/context/type-ref-context.js +17 -0
  195. package/dist/src/context/type-ref-context.js.map +1 -0
  196. package/dist/src/symbols/python-module-scope.d.ts +13 -1
  197. package/dist/src/symbols/python-module-scope.d.ts.map +1 -1
  198. package/dist/src/symbols/python-module-scope.js +36 -2
  199. package/dist/src/symbols/python-module-scope.js.map +1 -1
  200. package/dist/src/symbols/python-output-symbol.d.ts +11 -0
  201. package/dist/src/symbols/python-output-symbol.d.ts.map +1 -1
  202. package/dist/src/symbols/python-output-symbol.js +26 -2
  203. package/dist/src/symbols/python-output-symbol.js.map +1 -1
  204. package/dist/src/symbols/reference.d.ts +8 -1
  205. package/dist/src/symbols/reference.d.ts.map +1 -1
  206. package/dist/src/symbols/reference.js +4 -2
  207. package/dist/src/symbols/reference.js.map +1 -1
  208. package/dist/test/dataclassdeclarations.test.js +5 -2
  209. package/dist/test/dataclassdeclarations.test.js.map +1 -1
  210. package/dist/test/externals.test.js +8 -2
  211. package/dist/test/externals.test.js.map +1 -1
  212. package/dist/test/functiondeclaration.test.js +6 -3
  213. package/dist/test/functiondeclaration.test.js.map +1 -1
  214. package/dist/test/imports.test.js +3 -3
  215. package/dist/test/imports.test.js.map +1 -1
  216. package/dist/test/references.test.js +1 -1
  217. package/dist/test/references.test.js.map +1 -1
  218. package/dist/test/sourcefiles.test.js +26 -26
  219. package/dist/test/sourcefiles.test.js.map +1 -1
  220. package/dist/test/type-checking-imports.test.d.ts +2 -0
  221. package/dist/test/type-checking-imports.test.d.ts.map +1 -0
  222. package/dist/test/type-checking-imports.test.js +437 -0
  223. package/dist/test/type-checking-imports.test.js.map +1 -0
  224. package/dist/test/uniontypeexpression.test.js +4 -1
  225. package/dist/test/uniontypeexpression.test.js.map +1 -1
  226. package/dist/test/variables.test.js +4 -1
  227. package/dist/test/variables.test.js.map +1 -1
  228. package/dist/tsconfig.tsbuildinfo +1 -1
  229. package/package.json +6 -4
  230. package/src/components/CallSignature.tsx +6 -2
  231. package/src/components/ImportStatement.tsx +51 -4
  232. package/src/components/Reference.tsx +3 -1
  233. package/src/components/SourceFile.tsx +44 -8
  234. package/src/components/TypeRefContext.tsx +36 -0
  235. package/src/components/TypeReference.tsx +15 -7
  236. package/src/components/VariableDeclaration.tsx +5 -1
  237. package/src/components/index.ts +1 -1
  238. package/src/context/index.ts +1 -0
  239. package/src/context/type-ref-context.tsx +16 -0
  240. package/src/symbols/python-module-scope.ts +55 -2
  241. package/src/symbols/python-output-symbol.ts +32 -1
  242. package/src/symbols/reference.tsx +10 -0
  243. package/temp/api.json +441 -336
  244. package/test/dataclassdeclarations.test.tsx +8 -2
  245. package/test/externals.test.tsx +8 -2
  246. package/test/functiondeclaration.test.tsx +6 -3
  247. package/test/imports.test.tsx +6 -6
  248. package/test/references.test.tsx +1 -1
  249. package/test/sourcefiles.test.tsx +13 -13
  250. package/test/type-checking-imports.test.tsx +363 -0
  251. package/test/uniontypeexpression.test.tsx +4 -1
  252. package/test/variables.test.tsx +4 -1
  253. package/vitest.config.ts +8 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["describe","expect","it","py","toSourceText","_$createComponent","Atom","jsValue","fileName","import","meta","url","lineNumber","columnNumber","toRenderTo","undefined","asFloat","a","b","c","Test","d"],"sources":["../../../test/values.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,363 @@
1
+ import { createComponent as _$createComponent } from "@alloy-js/core/jsx-runtime";
2
+ import { namekey, refkey } from "@alloy-js/core";
3
+ import { d } from "@alloy-js/core/testing";
4
+ import { describe, expect, it } from "vitest";
5
+ import * as py from "../src/index.js";
6
+ import { assertFileContents, toSourceText, toSourceTextMultiple } from "./utils.js";
7
+ describe("Python Variable", () => {
8
+ it("declares a python variable", () => {
9
+ const res = toSourceText([_$createComponent(py.VariableDeclaration, {
10
+ name: "myVar",
11
+ type: "int",
12
+ initializer: 42
13
+ }, {
14
+ fileName: import.meta.url,
15
+ lineNumber: 14,
16
+ columnNumber: 7
17
+ })]);
18
+ expect(res).toBe(`my_var: int = 42`);
19
+ });
20
+ it("takes a namekey", () => {
21
+ const res = toSourceText([_$createComponent(py.VariableDeclaration, {
22
+ get name() {
23
+ return namekey("my-var");
24
+ },
25
+ type: "int",
26
+ initializer: 42
27
+ }, {
28
+ fileName: import.meta.url,
29
+ lineNumber: 21,
30
+ columnNumber: 7
31
+ })]);
32
+ expect(res).toBe(`my_var: int = 42`);
33
+ });
34
+ it("takes a namekey", () => {
35
+ const res = toSourceText([_$createComponent(py.VariableDeclaration, {
36
+ get name() {
37
+ return namekey("my-var");
38
+ },
39
+ type: "int",
40
+ initializer: 42
41
+ }, {
42
+ fileName: import.meta.url,
43
+ lineNumber: 32,
44
+ columnNumber: 7
45
+ })]);
46
+ expect(res).toBe(`my_var: int = 42`);
47
+ });
48
+ it("declares a python variable without value", () => {
49
+ const res = toSourceText([_$createComponent(py.VariableDeclaration, {
50
+ name: "myVar",
51
+ type: "int",
52
+ omitNone: true
53
+ }, {
54
+ fileName: import.meta.url,
55
+ lineNumber: 43,
56
+ columnNumber: 7
57
+ })]);
58
+ expect(res).toBe(`my_var: int`);
59
+ });
60
+ it("declares a python variable without typeAnnotations", () => {
61
+ const res = toSourceText([_$createComponent(py.VariableDeclaration, {
62
+ name: "myVar",
63
+ initializer: 42
64
+ }, {
65
+ fileName: import.meta.url,
66
+ lineNumber: 50,
67
+ columnNumber: 7
68
+ })]);
69
+ expect(res).toBe(`my_var = 42`);
70
+ });
71
+ it("declares a python variable as None when undefined", () => {
72
+ const res = toSourceText([_$createComponent(py.VariableDeclaration, {
73
+ name: "myVar"
74
+ }, {
75
+ fileName: import.meta.url,
76
+ lineNumber: 56,
77
+ columnNumber: 31
78
+ })]);
79
+ expect(res).toBe(`my_var = None`);
80
+ });
81
+ it("declares a python variable as None when null", () => {
82
+ const res = toSourceText([_$createComponent(py.VariableDeclaration, {
83
+ name: "myVar",
84
+ get initializer() {
85
+ return _$createComponent(py.Atom, {
86
+ jsValue: null
87
+ }, {
88
+ fileName: import.meta.url,
89
+ lineNumber: 64,
90
+ columnNumber: 22
91
+ });
92
+ }
93
+ }, {
94
+ fileName: import.meta.url,
95
+ lineNumber: 62,
96
+ columnNumber: 7
97
+ })]);
98
+ expect(res).toBe(`my_var = None`);
99
+ });
100
+ it("declares a python variable that's an array", () => {
101
+ const res = toSourceText([_$createComponent(py.VariableDeclaration, {
102
+ name: "numbers",
103
+ get type() {
104
+ return _$createComponent(py.TypeReference, {
105
+ name: "list",
106
+ typeArgs: ["int"]
107
+ }, {
108
+ fileName: import.meta.url,
109
+ lineNumber: 74,
110
+ columnNumber: 15
111
+ });
112
+ },
113
+ get initializer() {
114
+ return _$createComponent(py.Atom, {
115
+ jsValue: [1, 2, 3]
116
+ }, {
117
+ fileName: import.meta.url,
118
+ lineNumber: 75,
119
+ columnNumber: 22
120
+ });
121
+ }
122
+ }, {
123
+ fileName: import.meta.url,
124
+ lineNumber: 72,
125
+ columnNumber: 7
126
+ })]);
127
+ expect(res).toBe(`numbers: list[int] = [1, 2, 3]`);
128
+ });
129
+ it("declares a python variable with a python value", () => {
130
+ const res = toSourceText([_$createComponent(py.VariableDeclaration, {
131
+ name: "nameIdPairs",
132
+ get initializer() {
133
+ return _$createComponent(py.Atom, {
134
+ jsValue: {
135
+ John: 123,
136
+ Doe: 234
137
+ }
138
+ }, {
139
+ fileName: import.meta.url,
140
+ lineNumber: 85,
141
+ columnNumber: 22
142
+ });
143
+ }
144
+ }, {
145
+ fileName: import.meta.url,
146
+ lineNumber: 83,
147
+ columnNumber: 7
148
+ })]);
149
+ expect(res).toBe(`name_id_pairs = {"John": 123, "Doe": 234}`);
150
+ });
151
+ it("declares a python variable with omitNone", () => {
152
+ const res = toSourceText([_$createComponent(py.VariableDeclaration, {
153
+ name: "omitNoneVar",
154
+ type: "int",
155
+ omitNone: true
156
+ }, {
157
+ fileName: import.meta.url,
158
+ lineNumber: 93,
159
+ columnNumber: 7
160
+ })]);
161
+ expect(res).toBe(`omit_none_var: int`);
162
+ });
163
+ it("declares a call statement python variable", () => {
164
+ const res = toSourceText([_$createComponent(py.VariableDeclaration, {
165
+ name: "callStmtVar",
166
+ initializer: 12,
167
+ callStatementVar: true
168
+ }, {
169
+ fileName: import.meta.url,
170
+ lineNumber: 100,
171
+ columnNumber: 7
172
+ })]);
173
+ expect(res).toBe(`call_stmt_var=12`);
174
+ });
175
+ it("declares a call statement python variable without name", () => {
176
+ const res = toSourceText([_$createComponent(py.VariableDeclaration, {
177
+ name: "",
178
+ initializer: 12,
179
+ callStatementVar: true
180
+ }, {
181
+ fileName: import.meta.url,
182
+ lineNumber: 111,
183
+ columnNumber: 7
184
+ })]);
185
+ expect(res).toBe(`12`);
186
+ });
187
+ it("declares a python variable with an optional type", () => {
188
+ const res = toSourceText([_$createComponent(py.StatementList, {
189
+ get children() {
190
+ return _$createComponent(py.VariableDeclaration, {
191
+ name: "my_var",
192
+ get type() {
193
+ return _$createComponent(py.UnionTypeExpression, {
194
+ children: ["int", "None"]
195
+ }, {
196
+ fileName: import.meta.url,
197
+ lineNumber: 126,
198
+ columnNumber: 13
199
+ });
200
+ }
201
+ }, {
202
+ fileName: import.meta.url,
203
+ lineNumber: 123,
204
+ columnNumber: 9
205
+ });
206
+ }
207
+ }, {
208
+ fileName: import.meta.url,
209
+ lineNumber: 122,
210
+ columnNumber: 7
211
+ })]);
212
+ expect(res).toBe(d`
213
+ my_var: int | None = None`);
214
+ });
215
+ it("declares a python variable with an optional type omitting none", () => {
216
+ const res = toSourceText([_$createComponent(py.StatementList, {
217
+ get children() {
218
+ return _$createComponent(py.VariableDeclaration, {
219
+ name: "my_var",
220
+ get type() {
221
+ return _$createComponent(py.UnionTypeExpression, {
222
+ children: ["int", "None"]
223
+ }, {
224
+ fileName: import.meta.url,
225
+ lineNumber: 141,
226
+ columnNumber: 13
227
+ });
228
+ },
229
+ omitNone: true
230
+ }, {
231
+ fileName: import.meta.url,
232
+ lineNumber: 138,
233
+ columnNumber: 9
234
+ });
235
+ }
236
+ }, {
237
+ fileName: import.meta.url,
238
+ lineNumber: 137,
239
+ columnNumber: 7
240
+ })]);
241
+ expect(res).toBe(d`
242
+ my_var: int | None`);
243
+ });
244
+ it("declares a python variable with a class type", () => {
245
+ const classKey = refkey();
246
+ const res = toSourceText([_$createComponent(py.StatementList, {
247
+ get children() {
248
+ return [_$createComponent(py.ClassDeclaration, {
249
+ name: "MyClass",
250
+ refkey: classKey
251
+ }, {
252
+ fileName: import.meta.url,
253
+ lineNumber: 155,
254
+ columnNumber: 9
255
+ }), _$createComponent(py.VariableDeclaration, {
256
+ name: "my_var",
257
+ get type() {
258
+ return _$createComponent(py.Reference, {
259
+ refkey: classKey
260
+ }, {
261
+ fileName: import.meta.url,
262
+ lineNumber: 158,
263
+ columnNumber: 17
264
+ });
265
+ }
266
+ }, {
267
+ fileName: import.meta.url,
268
+ lineNumber: 156,
269
+ columnNumber: 9
270
+ })];
271
+ }
272
+ }, {
273
+ fileName: import.meta.url,
274
+ lineNumber: 154,
275
+ columnNumber: 7
276
+ })]);
277
+ expect(res).toBe(d`
278
+ class MyClass:
279
+ pass
280
+
281
+ my_var: MyClass = None`);
282
+ });
283
+ it("declares a python variable with a class type from a different module", () => {
284
+ const classKey = refkey();
285
+ const res = toSourceTextMultiple([_$createComponent(py.SourceFile, {
286
+ path: "classes.py",
287
+ get children() {
288
+ return _$createComponent(py.ClassDeclaration, {
289
+ name: "MyClass",
290
+ refkey: classKey
291
+ }, {
292
+ fileName: import.meta.url,
293
+ lineNumber: 173,
294
+ columnNumber: 9
295
+ });
296
+ }
297
+ }, {
298
+ fileName: import.meta.url,
299
+ lineNumber: 172,
300
+ columnNumber: 7
301
+ }), _$createComponent(py.SourceFile, {
302
+ path: "usage.py",
303
+ get children() {
304
+ return _$createComponent(py.VariableDeclaration, {
305
+ name: "my_var",
306
+ type: classKey
307
+ }, {
308
+ fileName: import.meta.url,
309
+ lineNumber: 176,
310
+ columnNumber: 9
311
+ });
312
+ }
313
+ }, {
314
+ fileName: import.meta.url,
315
+ lineNumber: 175,
316
+ columnNumber: 7
317
+ })]);
318
+ assertFileContents(res, {
319
+ "classes.py": `
320
+ class MyClass:
321
+ pass
322
+
323
+ `,
324
+ "usage.py": `
325
+ from typing import TYPE_CHECKING
326
+
327
+ if TYPE_CHECKING:
328
+ from classes import MyClass
329
+
330
+ my_var: MyClass = None
331
+ `
332
+ });
333
+ });
334
+ it("declares a python variable receiving other variable as value", () => {
335
+ const varKey = refkey();
336
+ const res = toSourceText([_$createComponent(py.StatementList, {
337
+ get children() {
338
+ return [_$createComponent(py.VariableDeclaration, {
339
+ name: "my_var",
340
+ refkey: varKey,
341
+ initializer: 42
342
+ }, {
343
+ fileName: import.meta.url,
344
+ lineNumber: 200,
345
+ columnNumber: 9
346
+ }), _$createComponent(py.VariableDeclaration, {
347
+ name: "my_other_var",
348
+ initializer: varKey
349
+ }, {
350
+ fileName: import.meta.url,
351
+ lineNumber: 205,
352
+ columnNumber: 9
353
+ })];
354
+ }
355
+ }, {
356
+ fileName: import.meta.url,
357
+ lineNumber: 199,
358
+ columnNumber: 7
359
+ })]);
360
+ expect(res).toBe(`my_var = 42\nmy_other_var = my_var`);
361
+ });
362
+ });
363
+ //# sourceMappingURL=variables.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["namekey","refkey","d","describe","expect","it","py","assertFileContents","toSourceText","toSourceTextMultiple","res","_$createComponent","VariableDeclaration","name","type","initializer","fileName","import","meta","url","lineNumber","columnNumber","toBe","omitNone","Atom","jsValue","TypeReference","typeArgs","John","Doe","callStatementVar","StatementList","children","UnionTypeExpression","classKey","ClassDeclaration","Reference","SourceFile","path","varKey"],"sources":["../../../test/variables.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"CallSignature.d.ts","sourceRoot":"","sources":["../../../src/components/CallSignature.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAMT,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEL,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAKpC,MAAM,MAAM,eAAe,GAAG,GAAG,GAAG,GAAG,CAAC;AAQxC,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,mBAAmB,GAAG,eAAe,GAAG,MAAM,CAAC,EAAE,CAAC;IACzE,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,4BAA4B,YA0B1E;AAqDD,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,UAAU,CAAC,EAAE,CAAC,mBAAmB,GAAG,eAAe,GAAG,MAAM,CAAC,EAAE,CAAC;IAEhE;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAE1B;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,UAAU,CAAC,EAAE,QAAQ,CAAC;CACvB;AACD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,YAuBtD"}
1
+ {"version":3,"file":"CallSignature.d.ts","sourceRoot":"","sources":["../../../src/components/CallSignature.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAMT,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEL,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAMpC,MAAM,MAAM,eAAe,GAAG,GAAG,GAAG,GAAG,CAAC;AAQxC,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,mBAAmB,GAAG,eAAe,GAAG,MAAM,CAAC,EAAE,CAAC;IACzE,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,4BAA4B,YA0B1E;AAwDD,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,UAAU,CAAC,EAAE,CAAC,mBAAmB,GAAG,eAAe,GAAG,MAAM,CAAC,EAAE,CAAC;IAEhE;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAE1B;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,UAAU,CAAC,EAAE,QAAQ,CAAC;CACvB;AACD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,YAuBtD"}
@@ -3,6 +3,7 @@ import { computed, createSymbolSlot, For, Show } from "@alloy-js/core";
3
3
  import { isParameterDescriptor } from "../parameter-descriptor.js";
4
4
  import { createPythonSymbol } from "../symbol-creation.js";
5
5
  import { Atom } from "./Atom.js";
6
+ import { TypeRefContext } from "./TypeRefContext.js";
6
7
  function isParameterMarker(param) {
7
8
  return typeof param === "string" && (param === "*" || param === "/");
8
9
  }
@@ -52,9 +53,13 @@ function parameter(param) {
52
53
  return !!param.type;
53
54
  },
54
55
  get children() {
55
- return [": ", _$createComponent(TypeSlot, {
56
+ return [":", " ", _$createComponent(TypeRefContext, {
56
57
  get children() {
57
- return param.type;
58
+ return _$createComponent(TypeSlot, {
59
+ get children() {
60
+ return param.type;
61
+ }
62
+ });
58
63
  }
59
64
  })];
60
65
  }
@@ -136,7 +141,11 @@ export function CallSignature(props) {
136
141
  }
137
142
  });
138
143
  const typeParams = props.typeParameters ? `[${props.typeParameters.join(", ")}]` : "";
139
- const sReturnType = props.returnType ? [" -> ", _$memo(() => props.returnType)] : undefined;
144
+ const sReturnType = props.returnType ? [" -> ", _$createComponent(TypeRefContext, {
145
+ get children() {
146
+ return props.returnType;
147
+ }
148
+ })] : undefined;
140
149
  return [typeParams, "(", sParams, ")", sReturnType];
141
150
  }
142
151
  //# sourceMappingURL=CallSignature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["computed","createSymbolSlot","For","Show","isParameterDescriptor","createPythonSymbol","Atom","isParameterMarker","param","CallSignatureParameters","props","parameterList","params","parameters","map","p","parameter","normalizeAndDeclareParameter","args","push","kwargs","_$createComponent","each","comma","space","children","TypeSlot","_$createIntrinsic","_$memo","symbol","name","when","type","default","undefined","jsValue","refkeys","refkey","firstSymbol","CallSignature","sParams","typeParams","typeParameters","join","sReturnType","returnType"],"sources":["../../../src/components/CallSignature.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["computed","createSymbolSlot","For","Show","isParameterDescriptor","createPythonSymbol","Atom","TypeRefContext","isParameterMarker","param","CallSignatureParameters","props","parameterList","params","parameters","map","p","parameter","normalizeAndDeclareParameter","args","push","kwargs","_$createComponent","each","comma","space","children","TypeSlot","_$createIntrinsic","_$memo","symbol","name","when","type","default","undefined","jsValue","refkeys","refkey","firstSymbol","CallSignature","sParams","typeParams","typeParameters","join","sReturnType","returnType"],"sources":["../../../src/components/CallSignature.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,18 @@ export interface ImportStatementsProps {
3
3
  records: ImportRecords;
4
4
  joinImportsFromSameModule?: boolean;
5
5
  }
6
+ export interface CategorizedImports {
7
+ /** Imports used only in type annotation contexts (for TYPE_CHECKING block) */
8
+ typeImports: ImportRecords;
9
+ /** Regular imports used at runtime */
10
+ valueImports: ImportRecords;
11
+ }
12
+ /**
13
+ * Categorize import records into type-only and value imports.
14
+ * Type-only imports are those used only in type annotation contexts.
15
+ * Value imports are regular imports used at runtime.
16
+ */
17
+ export declare function categorizeImportRecords(records: ImportRecords): CategorizedImports;
6
18
  /**
7
19
  * A component that renders import statements based on the provided import records.
8
20
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ImportStatement.d.ts","sourceRoot":"","sources":["../../../src/components/ImportStatement.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpE,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,aAAa,CAAC;IACvB,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,6CA2C5D;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,oBAAoB,eA8B1D"}
1
+ {"version":3,"file":"ImportStatement.d.ts","sourceRoot":"","sources":["../../../src/components/ImportStatement.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpE,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,aAAa,CAAC;IACvB,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED,MAAM,WAAW,kBAAkB;IACjC,8EAA8E;IAC9E,WAAW,EAAE,aAAa,CAAC;IAC3B,sCAAsC;IACtC,YAAY,EAAE,aAAa,CAAC;CAC7B;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,aAAa,GACrB,kBAAkB,CA+BpB;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,6CA2C5D;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,oBAAoB,eA8B1D"}
@@ -1,5 +1,45 @@
1
1
  import { createComponent as _$createComponent, createIntrinsic as _$createIntrinsic, memo as _$memo } from "@alloy-js/core/jsx-runtime";
2
2
  import { computed, mapJoin, memo } from "@alloy-js/core";
3
+ /**
4
+ * Categorize import records into type-only and value imports.
5
+ * Type-only imports are those used only in type annotation contexts.
6
+ * Value imports are regular imports used at runtime.
7
+ */
8
+ export function categorizeImportRecords(records) {
9
+ const typeImports = new Map();
10
+ const valueImports = new Map();
11
+ for (const [module, properties] of records) {
12
+ if (!properties.symbols || properties.symbols.size === 0) {
13
+ // Module-level imports without symbols go to value imports
14
+ valueImports.set(module, properties);
15
+ continue;
16
+ }
17
+ const typeSymbols = new Set();
18
+ const valueSymbols = new Set();
19
+ for (const sym of properties.symbols) {
20
+ if (sym.local.isTypeOnly) {
21
+ typeSymbols.add(sym);
22
+ } else {
23
+ valueSymbols.add(sym);
24
+ }
25
+ }
26
+ if (typeSymbols.size > 0) {
27
+ typeImports.set(module, {
28
+ symbols: typeSymbols
29
+ });
30
+ }
31
+ if (valueSymbols.size > 0) {
32
+ valueImports.set(module, {
33
+ symbols: valueSymbols
34
+ });
35
+ }
36
+ }
37
+ return {
38
+ typeImports,
39
+ valueImports
40
+ };
41
+ }
42
+
3
43
  /**
4
44
  * A component that renders import statements based on the provided import records.
5
45
  *
@@ -10,9 +50,11 @@ import { computed, mapJoin, memo } from "@alloy-js/core";
10
50
  */
11
51
  export function ImportStatements(props) {
12
52
  // Sort the import records by module name
13
- const imports = computed(() => [...props.records].sort(([a], [b]) => {
14
- return a.name.localeCompare(b.name);
15
- }));
53
+ const imports = computed(() => {
54
+ return [...props.records].sort(([a], [b]) => {
55
+ return a.name.localeCompare(b.name);
56
+ });
57
+ });
16
58
  return mapJoin(() => imports.value, ([module, properties]) => {
17
59
  // Only handling absolute imports for now
18
60
  const targetPath = module.name;
@@ -1 +1 @@
1
- {"version":3,"names":["computed","mapJoin","memo","ImportStatements","props","imports","records","sort","a","b","name","localeCompare","value","module","properties","targetPath","symbols","size","sortedSymbols","Array","from","local","joinImportsFromSameModule","_$createComponent","ImportStatement","path","Set","map","symbol","idx","arr","length","_$createIntrinsic","importSymbols","sym","push","parts","target","nis","ImportBinding","importedSymbol","joiner","text","localName","targetName","_$memo"],"sources":["../../../src/components/ImportStatement.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["computed","mapJoin","memo","categorizeImportRecords","records","typeImports","Map","valueImports","module","properties","symbols","size","set","typeSymbols","Set","valueSymbols","sym","local","isTypeOnly","add","ImportStatements","props","imports","sort","a","b","name","localeCompare","value","targetPath","sortedSymbols","Array","from","joinImportsFromSameModule","_$createComponent","ImportStatement","path","map","symbol","idx","arr","length","_$createIntrinsic","importSymbols","push","parts","target","nis","ImportBinding","importedSymbol","joiner","text","localName","targetName","_$memo"],"sources":["../../../src/components/ImportStatement.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"Reference.d.ts","sourceRoot":"","sources":["../../../src/components/Reference.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwB,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAG9D,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,cAAc,qCAMnD"}
1
+ {"version":3,"file":"Reference.d.ts","sourceRoot":"","sources":["../../../src/components/Reference.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwB,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAI9D,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,cAAc,qCAOnD"}
@@ -1,5 +1,6 @@
1
1
  import { memo as _$memo } from "@alloy-js/core/jsx-runtime";
2
2
  import { computed, emitSymbol } from "@alloy-js/core";
3
+ import { isTypeRefContext } from "../context/type-ref-context.js";
3
4
  import { ref } from "../symbols/index.js";
4
5
  /**
5
6
  * A Python reference to a symbol, such as a variable, function, or class.
@@ -11,7 +12,10 @@ import { ref } from "../symbols/index.js";
11
12
  export function Reference({
12
13
  refkey
13
14
  }) {
14
- const reference = ref(refkey);
15
+ const inTypeRef = isTypeRefContext();
16
+ const reference = ref(refkey, {
17
+ type: inTypeRef
18
+ });
15
19
  const symbolRef = computed(() => reference()[1]);
16
20
  emitSymbol(symbolRef);
17
21
  return [_$memo(() => reference()[0])];
@@ -1 +1 @@
1
- {"version":3,"names":["computed","emitSymbol","ref","Reference","refkey","reference","symbolRef","_$memo"],"sources":["../../../src/components/Reference.tsx"],"sourcesContent":[null],"mappings":";AAAA,SAASA,QAAQ,EAAEC,UAAU,QAAgB,gBAAgB;AAC7D,SAASC,GAAG,QAAQ,qBAAqB;AAMzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,SAASA,CAAC;EAAEC;AAAuB,CAAC,EAAE;EACpD,MAAMC,SAAS,GAAGH,GAAG,CAACE,MAAM,CAAC;EAC7B,MAAME,SAAS,GAAGN,QAAQ,CAAC,MAAMK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;EAEhDJ,UAAU,CAACK,SAAS,CAAC;EACrB,QAAAC,MAAA,OAAUF,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1B","ignoreList":[]}
1
+ {"version":3,"names":["computed","emitSymbol","isTypeRefContext","ref","Reference","refkey","inTypeRef","reference","type","symbolRef","_$memo"],"sources":["../../../src/components/Reference.tsx"],"sourcesContent":[null],"mappings":";AAAA,SAASA,QAAQ,EAAEC,UAAU,QAAgB,gBAAgB;AAC7D,SAASC,gBAAgB,QAAQ,gCAAgC;AACjE,SAASC,GAAG,QAAQ,qBAAqB;AAMzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,SAASA,CAAC;EAAEC;AAAuB,CAAC,EAAE;EACpD,MAAMC,SAAS,GAAGJ,gBAAgB,CAAC,CAAC;EACpC,MAAMK,SAAS,GAAGJ,GAAG,CAACE,MAAM,EAAE;IAAEG,IAAI,EAAEF;EAAU,CAAC,CAAC;EAClD,MAAMG,SAAS,GAAGT,QAAQ,CAAC,MAAMO,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;EAEhDN,UAAU,CAACQ,SAAS,CAAC;EACrB,QAAAC,MAAA,OAAUH,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1B","ignoreList":[]}
@@ -33,7 +33,7 @@ export interface SourceFileProps {
33
33
  /**
34
34
  * __future__ imports to render after the docstring but before regular imports.
35
35
  */
36
- futureImports?: Children;
36
+ futureImports?: Children[];
37
37
  }
38
38
  /**
39
39
  * A Python source file component that represents a Python file in the source directory.
@@ -1 +1 @@
1
- {"version":3,"file":"SourceFile.d.ts","sourceRoot":"","sources":["../../../src/components/SourceFile.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,gBAAgB,EAUhB,KAAK,QAAQ,EACd,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AA+CxD,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,iBAAiB,CAAC;IACzB,6DAA6D;IAC7D,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,uBAAuB,EAAE,gBAAgB,CAAC,uBAAuB,CAC3B,CAAC;AAEpD,wBAAgB,aAAa,4BAE5B;AAED,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;;OAGG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAC;IAClB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf;;OAEG;IACH,aAAa,CAAC,EAAE,QAAQ,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,YAqGhD"}
1
+ {"version":3,"file":"SourceFile.d.ts","sourceRoot":"","sources":["../../../src/components/SourceFile.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,gBAAgB,EAWhB,KAAK,QAAQ,EACd,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAmDxD,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,iBAAiB,CAAC;IACzB,6DAA6D;IAC7D,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,uBAAuB,EAAE,gBAAgB,CAAC,uBAAuB,CAC3B,CAAC;AAEpD,wBAAgB,aAAa,4BAE5B;AAED,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;;OAGG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAC;IAClB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf;;OAEG;IACH,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,YAoIhD"}