@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,1478 @@
1
+ import { createComponent as _$createComponent, createIntrinsic as _$createIntrinsic, memo as _$memo } from "@alloy-js/core/jsx-runtime";
2
+ import { For, Indent, List, Prose, Show, childrenArray, computed, isKeyedChild } from "@alloy-js/core";
3
+ import { Atom } from "./Atom.js";
4
+ /**
5
+ * A component that creates a FunctionDoc block for functions.
6
+ */
7
+ export function FunctionDoc(props) {
8
+ const {
9
+ style = "google",
10
+ ...rest
11
+ } = props;
12
+ switch (style) {
13
+ case "google":
14
+ return _$createComponent(GoogleStyleFunctionDoc, rest, {
15
+ fileName: import.meta.url,
16
+ lineNumber: 39,
17
+ columnNumber: 14
18
+ });
19
+ default:
20
+ return undefined;
21
+ }
22
+ }
23
+ /**
24
+ * A component that creates a ClassDoc block for classes.
25
+ */
26
+ export function ClassDoc(props) {
27
+ const {
28
+ style = "google",
29
+ ...rest
30
+ } = props;
31
+ switch (style) {
32
+ case "google":
33
+ return _$createComponent(GoogleStyleClassDoc, rest, {
34
+ fileName: import.meta.url,
35
+ lineNumber: 67,
36
+ columnNumber: 14
37
+ });
38
+ default:
39
+ return undefined;
40
+ }
41
+ }
42
+ /**
43
+ * A component that creates a ModuleDoc block for module-level documentation.
44
+ */
45
+ export function ModuleDoc(props) {
46
+ const {
47
+ style = "google",
48
+ ...rest
49
+ } = props;
50
+ switch (style) {
51
+ case "google":
52
+ return _$createComponent(GoogleStyleModuleDoc, rest, {
53
+ fileName: import.meta.url,
54
+ lineNumber: 94,
55
+ columnNumber: 14
56
+ });
57
+ default:
58
+ return undefined;
59
+ }
60
+ }
61
+ /**
62
+ * A component that creates a PropertyDoc block for `@property` decorated methods.
63
+ */
64
+ export function PropertyDoc(props) {
65
+ const {
66
+ style = "google",
67
+ ...rest
68
+ } = props;
69
+ switch (style) {
70
+ case "google":
71
+ return _$createComponent(GoogleStylePropertyDoc, rest, {
72
+ fileName: import.meta.url,
73
+ lineNumber: 121,
74
+ columnNumber: 14
75
+ });
76
+ default:
77
+ return undefined;
78
+ }
79
+ }
80
+ /**
81
+ * A component that creates a GeneratorDoc block for generator functions.
82
+ */
83
+ export function GeneratorDoc(props) {
84
+ const {
85
+ style = "google",
86
+ ...rest
87
+ } = props;
88
+ switch (style) {
89
+ case "google":
90
+ return _$createComponent(GoogleStyleGeneratorDoc, rest, {
91
+ fileName: import.meta.url,
92
+ lineNumber: 150,
93
+ columnNumber: 14
94
+ });
95
+ default:
96
+ return undefined;
97
+ }
98
+ }
99
+ /**
100
+ * A component that creates an ExceptionDoc block for custom exception classes.
101
+ */
102
+ export function ExceptionDoc(props) {
103
+ const {
104
+ style = "google",
105
+ ...rest
106
+ } = props;
107
+ switch (style) {
108
+ case "google":
109
+ return _$createComponent(GoogleStyleExceptionDoc, rest, {
110
+ fileName: import.meta.url,
111
+ lineNumber: 178,
112
+ columnNumber: 14
113
+ });
114
+ default:
115
+ return undefined;
116
+ }
117
+ }
118
+ /**
119
+ * A component that creates documentation for a single attribute.
120
+ * This can be used for both inline and block attribute documentation.
121
+ */
122
+ export function AttributeDoc(props) {
123
+ const {
124
+ style = "google",
125
+ ...rest
126
+ } = props;
127
+ switch (style) {
128
+ case "google":
129
+ return _$createComponent(GoogleStyleAttributeDoc, rest, {
130
+ fileName: import.meta.url,
131
+ lineNumber: 202,
132
+ columnNumber: 14
133
+ });
134
+ default:
135
+ return undefined;
136
+ }
137
+ }
138
+ /**
139
+ * A component that creates a MethodDoc block for class methods.
140
+ * Automatically adds a note about not including 'self' parameter if no custom note is provided.
141
+ */
142
+ export function MethodDoc(props) {
143
+ const {
144
+ style = "google",
145
+ ...rest
146
+ } = props;
147
+ switch (style) {
148
+ case "google":
149
+ {
150
+ return _$createComponent(GoogleStyleMethodDoc, rest, {
151
+ fileName: import.meta.url,
152
+ lineNumber: 233,
153
+ columnNumber: 14
154
+ });
155
+ }
156
+ default:
157
+ return undefined;
158
+ }
159
+ }
160
+ /**
161
+ * A PyDoc comment. The children of this component are joined with two hard
162
+ * linebreaks. This is useful for creating PyDoc comments with multiple paragraphs.
163
+ */
164
+ export function PyDoc(props) {
165
+ const children = childrenArray(() => props.children);
166
+ return ['"""', _$createIntrinsic("hbr", {}, {
167
+ fileName: import.meta.url,
168
+ lineNumber: 253,
169
+ columnNumber: 7
170
+ }), _$createComponent(List, {
171
+ doubleHardline: true,
172
+ children: children
173
+ }, {
174
+ fileName: import.meta.url,
175
+ lineNumber: 254,
176
+ columnNumber: 7
177
+ }), _$createIntrinsic("hbr", {}, {
178
+ fileName: import.meta.url,
179
+ lineNumber: 255,
180
+ columnNumber: 7
181
+ }), '"""', _$createIntrinsic("hbr", {}, {
182
+ fileName: import.meta.url,
183
+ lineNumber: 257,
184
+ columnNumber: 7
185
+ })];
186
+ }
187
+ /**
188
+ * An inline documentation component for attribute docstrings.
189
+ * Unlike PyDoc, this doesn't add a trailing line break after the closing quotes,
190
+ * which is appropriate for documenting consecutive attributes like enum members.
191
+ */
192
+ export function InlineDoc(props) {
193
+ return [_$createIntrinsic("hardline", {}, {
194
+ fileName: import.meta.url,
195
+ lineNumber: 274,
196
+ columnNumber: 7
197
+ }), '"""', _$createIntrinsic("hbr", {}, {
198
+ fileName: import.meta.url,
199
+ lineNumber: 276,
200
+ columnNumber: 7
201
+ }), _$memo(() => props.children, false, "props.children"), _$createIntrinsic("hbr", {}, {
202
+ fileName: import.meta.url,
203
+ lineNumber: 278,
204
+ columnNumber: 7
205
+ }), '"""'];
206
+ }
207
+ /**
208
+ * Create a PyDoc example, which is prepended by \>\>.
209
+ */
210
+ export function PyDocExample(props) {
211
+ const lines = computed(() => {
212
+ const kids = childrenArray(() => props.children, {
213
+ preserveFragments: true
214
+ });
215
+ const out = [];
216
+ const isBr = node => {
217
+ if (node == null) return false;
218
+ const keyed = isKeyedChild(node);
219
+ const tag = keyed ? node.tag : node?.tag;
220
+ const kind = node?.kind;
221
+ // Consider only <br /> as a line splitter (not rendered as content).
222
+ return tag === "br" || kind === "br";
223
+ };
224
+
225
+ // Handles a single string child: split on newlines to produce lines.
226
+ const splitAndTrim = s => s.split(/\r?\n/).map(x => x.trim()).filter(x => x.length > 0);
227
+ if (kids.length === 1 && typeof kids[0] === "string") {
228
+ return splitAndTrim(kids[0]);
229
+ }
230
+
231
+ // Handles mixed children: each child becomes a line, string children
232
+ // may include embedded newlines, and <br /> acts as a line split.
233
+ for (const child of kids) {
234
+ if (child == null || isBr(child)) continue;
235
+ if (typeof child === "string") {
236
+ // String children: split on newlines to produce lines.
237
+ for (const seg of splitAndTrim(child)) out.push(seg);
238
+ } else {
239
+ // Non-string child (component/fragment) are preserved as their own doctest line.
240
+ out.push(child);
241
+ }
242
+ }
243
+ return out;
244
+ });
245
+ return [_$createComponent(For, {
246
+ get each() {
247
+ return lines.value;
248
+ },
249
+ children: line => [">> ", line]
250
+ }, {
251
+ fileName: import.meta.url,
252
+ lineNumber: 335,
253
+ columnNumber: 7
254
+ })];
255
+ }
256
+ export function SimpleCommentBlock(props) {
257
+ const children = childrenArray(() => props.children);
258
+ let content;
259
+ if (children.length === 1 && typeof children[0] === "string") {
260
+ const raw = children[0];
261
+ if (raw.includes("\n") || raw.includes("\\n")) {
262
+ const parts = raw.split(/\r?\n|\\n/);
263
+ content = [_$memo(() => parts.map((p, i) => [_$createComponent(Prose, {
264
+ children: p
265
+ }, {
266
+ fileName: import.meta.url,
267
+ lineNumber: 362,
268
+ columnNumber: 15
269
+ }), _$memo(() => _$memo(() => i < parts.length - 1)() && _$createIntrinsic("hbr", {}, {
270
+ fileName: import.meta.url,
271
+ lineNumber: 363,
272
+ columnNumber: 40
273
+ }), false, "_$memo(\u2026)(\u2026) && \u2026")]), false, "parts.map(\u2026)")];
274
+ } else {
275
+ content = _$createComponent(Prose, {
276
+ get children() {
277
+ return props.children;
278
+ }
279
+ }, {
280
+ fileName: import.meta.url,
281
+ lineNumber: 369,
282
+ columnNumber: 17
283
+ });
284
+ }
285
+ } else {
286
+ content = _$createComponent(Prose, {
287
+ get children() {
288
+ return props.children;
289
+ }
290
+ }, {
291
+ fileName: import.meta.url,
292
+ lineNumber: 372,
293
+ columnNumber: 15
294
+ });
295
+ }
296
+ return ["# ", _$createIntrinsic("align", {
297
+ string: "# ",
298
+ children: content
299
+ }, {
300
+ fileName: import.meta.url,
301
+ lineNumber: 377,
302
+ columnNumber: 9
303
+ })];
304
+ }
305
+ export function SimpleInlineComment(props) {
306
+ return [" ", "# ", _$createComponent(Prose, {
307
+ get children() {
308
+ return props.children;
309
+ }
310
+ }, {
311
+ fileName: import.meta.url,
312
+ lineNumber: 389,
313
+ columnNumber: 15
314
+ })];
315
+ }
316
+ /**
317
+ * A component that creates a GoogleStyleFunctionDoc block for functions.
318
+ */
319
+ function GoogleStyleFunctionDoc(props) {
320
+ // We are creating a list instead of relying on <Show> because otherwise
321
+ // <List> would render spaces between the elements even if <Show> evaluates to false.
322
+ const children = [];
323
+ if (props.description !== undefined) {
324
+ children.push(_$createComponent(List, {
325
+ doubleHardline: true,
326
+ get children() {
327
+ return props.description;
328
+ }
329
+ }, {
330
+ fileName: import.meta.url,
331
+ lineNumber: 408,
332
+ columnNumber: 19
333
+ }));
334
+ }
335
+ if (props.parameters?.length) {
336
+ children.push(_$createComponent(GoogleStyleDocParams, {
337
+ get parameters() {
338
+ return props.parameters;
339
+ }
340
+ }, {
341
+ fileName: import.meta.url,
342
+ lineNumber: 411,
343
+ columnNumber: 19
344
+ }));
345
+ }
346
+ if (props.returns) {
347
+ children.push(_$createComponent(GoogleStyleDocReturn, {
348
+ get message() {
349
+ return props.returns;
350
+ }
351
+ }, {
352
+ fileName: import.meta.url,
353
+ lineNumber: 414,
354
+ columnNumber: 19
355
+ }));
356
+ }
357
+ if (props.yields) {
358
+ children.push(_$createComponent(GoogleStyleDocYields, {
359
+ get message() {
360
+ return props.yields;
361
+ }
362
+ }, {
363
+ fileName: import.meta.url,
364
+ lineNumber: 417,
365
+ columnNumber: 19
366
+ }));
367
+ }
368
+ if (props.raises?.length) {
369
+ children.push(props.raises.map(param => _$createComponent(GoogleStyleDocRaises, {
370
+ message: param
371
+ }, {
372
+ fileName: import.meta.url,
373
+ lineNumber: 421,
374
+ columnNumber: 36
375
+ })));
376
+ }
377
+ if (props.examples?.length) {
378
+ children.push(_$createComponent(GoogleStyleDocExamples, {
379
+ get items() {
380
+ return props.examples;
381
+ }
382
+ }, {
383
+ fileName: import.meta.url,
384
+ lineNumber: 425,
385
+ columnNumber: 19
386
+ }));
387
+ }
388
+ if (props.seeAlso?.length) {
389
+ children.push(_$createComponent(GoogleStyleDocSeeAlso, {
390
+ get items() {
391
+ return props.seeAlso;
392
+ }
393
+ }, {
394
+ fileName: import.meta.url,
395
+ lineNumber: 428,
396
+ columnNumber: 19
397
+ }));
398
+ }
399
+ if (props.warning) {
400
+ children.push(_$createComponent(GoogleStyleDocWarning, {
401
+ get message() {
402
+ return props.warning;
403
+ }
404
+ }, {
405
+ fileName: import.meta.url,
406
+ lineNumber: 431,
407
+ columnNumber: 19
408
+ }));
409
+ }
410
+ if (props.deprecated) {
411
+ children.push(_$createComponent(GoogleStyleDocDeprecated, {
412
+ get message() {
413
+ return props.deprecated;
414
+ }
415
+ }, {
416
+ fileName: import.meta.url,
417
+ lineNumber: 434,
418
+ columnNumber: 19
419
+ }));
420
+ }
421
+ if (props.note) {
422
+ children.push(_$createComponent(GoogleStyleDocNote, {
423
+ get message() {
424
+ return props.note;
425
+ }
426
+ }, {
427
+ fileName: import.meta.url,
428
+ lineNumber: 437,
429
+ columnNumber: 19
430
+ }));
431
+ }
432
+ return _$createComponent(PyDoc, {
433
+ children: children
434
+ }, {
435
+ fileName: import.meta.url,
436
+ lineNumber: 439,
437
+ columnNumber: 10
438
+ });
439
+ }
440
+ /**
441
+ * A component that creates a GoogleStyleClassDoc block for classes.
442
+ */
443
+ function GoogleStyleClassDoc(props) {
444
+ // We are creating a list instead of relying on <Show> because otherwise
445
+ // <List> would render spaces between the elements even if <Show> evaluates to false.
446
+ const children = [];
447
+ if (props.description !== undefined) {
448
+ children.push(_$createComponent(List, {
449
+ doubleHardline: true,
450
+ get children() {
451
+ return props.description;
452
+ }
453
+ }, {
454
+ fileName: import.meta.url,
455
+ lineNumber: 452,
456
+ columnNumber: 19
457
+ }));
458
+ }
459
+ if (props.attributes?.length) {
460
+ children.push(_$createComponent(GoogleStyleDocAttributes, {
461
+ get attributes() {
462
+ return props.attributes;
463
+ }
464
+ }, {
465
+ fileName: import.meta.url,
466
+ lineNumber: 455,
467
+ columnNumber: 19
468
+ }));
469
+ }
470
+ if (props.parameters?.length) {
471
+ children.push(_$createComponent(GoogleStyleDocParams, {
472
+ get parameters() {
473
+ return props.parameters;
474
+ }
475
+ }, {
476
+ fileName: import.meta.url,
477
+ lineNumber: 458,
478
+ columnNumber: 19
479
+ }));
480
+ }
481
+ if (props.examples?.length) {
482
+ children.push(_$createComponent(GoogleStyleDocExamples, {
483
+ get items() {
484
+ return props.examples;
485
+ }
486
+ }, {
487
+ fileName: import.meta.url,
488
+ lineNumber: 461,
489
+ columnNumber: 19
490
+ }));
491
+ }
492
+ if (props.seeAlso?.length) {
493
+ children.push(_$createComponent(GoogleStyleDocSeeAlso, {
494
+ get items() {
495
+ return props.seeAlso;
496
+ }
497
+ }, {
498
+ fileName: import.meta.url,
499
+ lineNumber: 464,
500
+ columnNumber: 19
501
+ }));
502
+ }
503
+ if (props.warning) {
504
+ children.push(_$createComponent(GoogleStyleDocWarning, {
505
+ get message() {
506
+ return props.warning;
507
+ }
508
+ }, {
509
+ fileName: import.meta.url,
510
+ lineNumber: 467,
511
+ columnNumber: 19
512
+ }));
513
+ }
514
+ if (props.deprecated) {
515
+ children.push(_$createComponent(GoogleStyleDocDeprecated, {
516
+ get message() {
517
+ return props.deprecated;
518
+ }
519
+ }, {
520
+ fileName: import.meta.url,
521
+ lineNumber: 470,
522
+ columnNumber: 19
523
+ }));
524
+ }
525
+ if (props.note) {
526
+ children.push(_$createComponent(GoogleStyleDocNote, {
527
+ get message() {
528
+ return props.note;
529
+ }
530
+ }, {
531
+ fileName: import.meta.url,
532
+ lineNumber: 473,
533
+ columnNumber: 19
534
+ }));
535
+ }
536
+ return _$createComponent(PyDoc, {
537
+ children: children
538
+ }, {
539
+ fileName: import.meta.url,
540
+ lineNumber: 475,
541
+ columnNumber: 10
542
+ });
543
+ }
544
+ /**
545
+ * A component that creates a GoogleStyleModuleDoc block for modules.
546
+ */
547
+ function GoogleStyleModuleDoc(props) {
548
+ const children = [];
549
+ if (props.description !== undefined) {
550
+ children.push(_$createComponent(List, {
551
+ doubleHardline: true,
552
+ get children() {
553
+ return props.description;
554
+ }
555
+ }, {
556
+ fileName: import.meta.url,
557
+ lineNumber: 486,
558
+ columnNumber: 19
559
+ }));
560
+ }
561
+ if (props.attributes?.length) {
562
+ children.push(_$createComponent(GoogleStyleDocAttributes, {
563
+ get attributes() {
564
+ return props.attributes;
565
+ }
566
+ }, {
567
+ fileName: import.meta.url,
568
+ lineNumber: 489,
569
+ columnNumber: 19
570
+ }));
571
+ }
572
+ if (props.examples?.length) {
573
+ children.push(_$createComponent(GoogleStyleDocExamples, {
574
+ get items() {
575
+ return props.examples;
576
+ }
577
+ }, {
578
+ fileName: import.meta.url,
579
+ lineNumber: 492,
580
+ columnNumber: 19
581
+ }));
582
+ }
583
+ if (props.seeAlso?.length) {
584
+ children.push(_$createComponent(GoogleStyleDocSeeAlso, {
585
+ get items() {
586
+ return props.seeAlso;
587
+ }
588
+ }, {
589
+ fileName: import.meta.url,
590
+ lineNumber: 495,
591
+ columnNumber: 19
592
+ }));
593
+ }
594
+ if (props.warning) {
595
+ children.push(_$createComponent(GoogleStyleDocWarning, {
596
+ get message() {
597
+ return props.warning;
598
+ }
599
+ }, {
600
+ fileName: import.meta.url,
601
+ lineNumber: 498,
602
+ columnNumber: 19
603
+ }));
604
+ }
605
+ if (props.deprecated) {
606
+ children.push(_$createComponent(GoogleStyleDocDeprecated, {
607
+ get message() {
608
+ return props.deprecated;
609
+ }
610
+ }, {
611
+ fileName: import.meta.url,
612
+ lineNumber: 501,
613
+ columnNumber: 19
614
+ }));
615
+ }
616
+ if (props.todo?.length) {
617
+ children.push(_$createComponent(GoogleStyleDocTodo, {
618
+ get items() {
619
+ return props.todo;
620
+ }
621
+ }, {
622
+ fileName: import.meta.url,
623
+ lineNumber: 504,
624
+ columnNumber: 19
625
+ }));
626
+ }
627
+ return _$createComponent(PyDoc, {
628
+ children: children
629
+ }, {
630
+ fileName: import.meta.url,
631
+ lineNumber: 506,
632
+ columnNumber: 10
633
+ });
634
+ }
635
+ /**
636
+ * A component that creates a GoogleStylePropertyDoc block for properties.
637
+ */
638
+ function GoogleStylePropertyDoc(props) {
639
+ const children = [];
640
+ if (props.description !== undefined) {
641
+ children.push(_$createComponent(List, {
642
+ doubleHardline: true,
643
+ get children() {
644
+ return props.description;
645
+ }
646
+ }, {
647
+ fileName: import.meta.url,
648
+ lineNumber: 517,
649
+ columnNumber: 19
650
+ }));
651
+ }
652
+ if (props.returns) {
653
+ children.push(_$createComponent(GoogleStyleDocReturn, {
654
+ get message() {
655
+ return props.returns;
656
+ }
657
+ }, {
658
+ fileName: import.meta.url,
659
+ lineNumber: 520,
660
+ columnNumber: 19
661
+ }));
662
+ }
663
+ if (props.examples?.length) {
664
+ children.push(_$createComponent(GoogleStyleDocExamples, {
665
+ get items() {
666
+ return props.examples;
667
+ }
668
+ }, {
669
+ fileName: import.meta.url,
670
+ lineNumber: 523,
671
+ columnNumber: 19
672
+ }));
673
+ }
674
+ if (props.seeAlso?.length) {
675
+ children.push(_$createComponent(GoogleStyleDocSeeAlso, {
676
+ get items() {
677
+ return props.seeAlso;
678
+ }
679
+ }, {
680
+ fileName: import.meta.url,
681
+ lineNumber: 526,
682
+ columnNumber: 19
683
+ }));
684
+ }
685
+ if (props.warning) {
686
+ children.push(_$createComponent(GoogleStyleDocWarning, {
687
+ get message() {
688
+ return props.warning;
689
+ }
690
+ }, {
691
+ fileName: import.meta.url,
692
+ lineNumber: 529,
693
+ columnNumber: 19
694
+ }));
695
+ }
696
+ if (props.deprecated) {
697
+ children.push(_$createComponent(GoogleStyleDocDeprecated, {
698
+ get message() {
699
+ return props.deprecated;
700
+ }
701
+ }, {
702
+ fileName: import.meta.url,
703
+ lineNumber: 532,
704
+ columnNumber: 19
705
+ }));
706
+ }
707
+ if (props.note) {
708
+ children.push(_$createComponent(GoogleStyleDocNote, {
709
+ get message() {
710
+ return props.note;
711
+ }
712
+ }, {
713
+ fileName: import.meta.url,
714
+ lineNumber: 535,
715
+ columnNumber: 19
716
+ }));
717
+ }
718
+ return _$createComponent(PyDoc, {
719
+ children: children
720
+ }, {
721
+ fileName: import.meta.url,
722
+ lineNumber: 537,
723
+ columnNumber: 10
724
+ });
725
+ }
726
+ /**
727
+ * A component that creates a GoogleStyleGeneratorDoc block for generators.
728
+ */
729
+ function GoogleStyleGeneratorDoc(props) {
730
+ const children = [];
731
+ if (props.description !== undefined) {
732
+ children.push(_$createComponent(List, {
733
+ doubleHardline: true,
734
+ get children() {
735
+ return props.description;
736
+ }
737
+ }, {
738
+ fileName: import.meta.url,
739
+ lineNumber: 549,
740
+ columnNumber: 19
741
+ }));
742
+ }
743
+ if (props.parameters?.length) {
744
+ children.push(_$createComponent(GoogleStyleDocParams, {
745
+ get parameters() {
746
+ return props.parameters;
747
+ }
748
+ }, {
749
+ fileName: import.meta.url,
750
+ lineNumber: 552,
751
+ columnNumber: 19
752
+ }));
753
+ }
754
+ if (props.yields) {
755
+ children.push(_$createComponent(GoogleStyleDocYields, {
756
+ get message() {
757
+ return props.yields;
758
+ }
759
+ }, {
760
+ fileName: import.meta.url,
761
+ lineNumber: 555,
762
+ columnNumber: 19
763
+ }));
764
+ }
765
+ if (props.raises?.length) {
766
+ children.push(props.raises.map(param => _$createComponent(GoogleStyleDocRaises, {
767
+ message: param
768
+ }, {
769
+ fileName: import.meta.url,
770
+ lineNumber: 559,
771
+ columnNumber: 36
772
+ })));
773
+ }
774
+ if (props.examples?.length) {
775
+ children.push(_$createComponent(GoogleStyleDocExamples, {
776
+ get items() {
777
+ return props.examples;
778
+ }
779
+ }, {
780
+ fileName: import.meta.url,
781
+ lineNumber: 563,
782
+ columnNumber: 19
783
+ }));
784
+ }
785
+ if (props.seeAlso?.length) {
786
+ children.push(_$createComponent(GoogleStyleDocSeeAlso, {
787
+ get items() {
788
+ return props.seeAlso;
789
+ }
790
+ }, {
791
+ fileName: import.meta.url,
792
+ lineNumber: 566,
793
+ columnNumber: 19
794
+ }));
795
+ }
796
+ if (props.warning) {
797
+ children.push(_$createComponent(GoogleStyleDocWarning, {
798
+ get message() {
799
+ return props.warning;
800
+ }
801
+ }, {
802
+ fileName: import.meta.url,
803
+ lineNumber: 569,
804
+ columnNumber: 19
805
+ }));
806
+ }
807
+ if (props.deprecated) {
808
+ children.push(_$createComponent(GoogleStyleDocDeprecated, {
809
+ get message() {
810
+ return props.deprecated;
811
+ }
812
+ }, {
813
+ fileName: import.meta.url,
814
+ lineNumber: 572,
815
+ columnNumber: 19
816
+ }));
817
+ }
818
+ if (props.note) {
819
+ children.push(_$createComponent(GoogleStyleDocNote, {
820
+ get message() {
821
+ return props.note;
822
+ }
823
+ }, {
824
+ fileName: import.meta.url,
825
+ lineNumber: 575,
826
+ columnNumber: 19
827
+ }));
828
+ }
829
+ return _$createComponent(PyDoc, {
830
+ children: children
831
+ }, {
832
+ fileName: import.meta.url,
833
+ lineNumber: 577,
834
+ columnNumber: 10
835
+ });
836
+ }
837
+ /**
838
+ * A component that creates a GoogleStyleExceptionDoc block for exceptions.
839
+ */
840
+ function GoogleStyleExceptionDoc(props) {
841
+ const children = [];
842
+ if (props.description !== undefined) {
843
+ children.push(_$createComponent(List, {
844
+ doubleHardline: true,
845
+ get children() {
846
+ return props.description;
847
+ }
848
+ }, {
849
+ fileName: import.meta.url,
850
+ lineNumber: 589,
851
+ columnNumber: 19
852
+ }));
853
+ }
854
+ if (props.parameters?.length) {
855
+ children.push(_$createComponent(GoogleStyleDocParams, {
856
+ get parameters() {
857
+ return props.parameters;
858
+ }
859
+ }, {
860
+ fileName: import.meta.url,
861
+ lineNumber: 592,
862
+ columnNumber: 19
863
+ }));
864
+ }
865
+ if (props.attributes?.length) {
866
+ children.push(_$createComponent(GoogleStyleDocAttributes, {
867
+ get attributes() {
868
+ return props.attributes;
869
+ }
870
+ }, {
871
+ fileName: import.meta.url,
872
+ lineNumber: 595,
873
+ columnNumber: 19
874
+ }));
875
+ }
876
+ if (props.examples?.length) {
877
+ children.push(_$createComponent(GoogleStyleDocExamples, {
878
+ get items() {
879
+ return props.examples;
880
+ }
881
+ }, {
882
+ fileName: import.meta.url,
883
+ lineNumber: 598,
884
+ columnNumber: 19
885
+ }));
886
+ }
887
+ if (props.seeAlso?.length) {
888
+ children.push(_$createComponent(GoogleStyleDocSeeAlso, {
889
+ get items() {
890
+ return props.seeAlso;
891
+ }
892
+ }, {
893
+ fileName: import.meta.url,
894
+ lineNumber: 601,
895
+ columnNumber: 19
896
+ }));
897
+ }
898
+ if (props.warning) {
899
+ children.push(_$createComponent(GoogleStyleDocWarning, {
900
+ get message() {
901
+ return props.warning;
902
+ }
903
+ }, {
904
+ fileName: import.meta.url,
905
+ lineNumber: 604,
906
+ columnNumber: 19
907
+ }));
908
+ }
909
+ if (props.deprecated) {
910
+ children.push(_$createComponent(GoogleStyleDocDeprecated, {
911
+ get message() {
912
+ return props.deprecated;
913
+ }
914
+ }, {
915
+ fileName: import.meta.url,
916
+ lineNumber: 607,
917
+ columnNumber: 19
918
+ }));
919
+ }
920
+ if (props.note) {
921
+ children.push(_$createComponent(GoogleStyleDocNote, {
922
+ get message() {
923
+ return props.note;
924
+ }
925
+ }, {
926
+ fileName: import.meta.url,
927
+ lineNumber: 610,
928
+ columnNumber: 19
929
+ }));
930
+ }
931
+ return _$createComponent(PyDoc, {
932
+ children: children
933
+ }, {
934
+ fileName: import.meta.url,
935
+ lineNumber: 612,
936
+ columnNumber: 10
937
+ });
938
+ }
939
+ /**
940
+ * A component that creates a GoogleStyleAttributeDoc block for attributes.
941
+ */
942
+ function GoogleStyleAttributeDoc(props) {
943
+ return _$createComponent(GoogleStyleDocAttribute, {
944
+ get name() {
945
+ return props.name;
946
+ },
947
+ get type() {
948
+ return props.type;
949
+ },
950
+ get children() {
951
+ return props.children;
952
+ }
953
+ }, {
954
+ fileName: import.meta.url,
955
+ lineNumber: 623,
956
+ columnNumber: 5
957
+ });
958
+ }
959
+ /**
960
+ * A component that creates a GoogleStyleMethodDoc block for methods.
961
+ */
962
+ function GoogleStyleMethodDoc(props) {
963
+ const children = [];
964
+ if (props.description !== undefined) {
965
+ children.push(_$createComponent(List, {
966
+ doubleHardline: true,
967
+ get children() {
968
+ return props.description;
969
+ }
970
+ }, {
971
+ fileName: import.meta.url,
972
+ lineNumber: 637,
973
+ columnNumber: 19
974
+ }));
975
+ }
976
+ if (props.parameters?.length) {
977
+ children.push(_$createComponent(GoogleStyleDocParams, {
978
+ get parameters() {
979
+ return props.parameters;
980
+ }
981
+ }, {
982
+ fileName: import.meta.url,
983
+ lineNumber: 640,
984
+ columnNumber: 19
985
+ }));
986
+ }
987
+ if (props.returns) {
988
+ children.push(_$createComponent(GoogleStyleDocReturn, {
989
+ get message() {
990
+ return props.returns;
991
+ }
992
+ }, {
993
+ fileName: import.meta.url,
994
+ lineNumber: 643,
995
+ columnNumber: 19
996
+ }));
997
+ }
998
+ if (props.raises?.length) {
999
+ children.push(props.raises.map(param => _$createComponent(GoogleStyleDocRaises, {
1000
+ message: param
1001
+ }, {
1002
+ fileName: import.meta.url,
1003
+ lineNumber: 647,
1004
+ columnNumber: 36
1005
+ })));
1006
+ }
1007
+ if (props.examples?.length) {
1008
+ children.push(_$createComponent(GoogleStyleDocExamples, {
1009
+ get items() {
1010
+ return props.examples;
1011
+ }
1012
+ }, {
1013
+ fileName: import.meta.url,
1014
+ lineNumber: 651,
1015
+ columnNumber: 19
1016
+ }));
1017
+ }
1018
+ if (props.seeAlso?.length) {
1019
+ children.push(_$createComponent(GoogleStyleDocSeeAlso, {
1020
+ get items() {
1021
+ return props.seeAlso;
1022
+ }
1023
+ }, {
1024
+ fileName: import.meta.url,
1025
+ lineNumber: 654,
1026
+ columnNumber: 19
1027
+ }));
1028
+ }
1029
+ if (props.warning) {
1030
+ children.push(_$createComponent(GoogleStyleDocWarning, {
1031
+ get message() {
1032
+ return props.warning;
1033
+ }
1034
+ }, {
1035
+ fileName: import.meta.url,
1036
+ lineNumber: 657,
1037
+ columnNumber: 19
1038
+ }));
1039
+ }
1040
+ if (props.deprecated) {
1041
+ children.push(_$createComponent(GoogleStyleDocDeprecated, {
1042
+ get message() {
1043
+ return props.deprecated;
1044
+ }
1045
+ }, {
1046
+ fileName: import.meta.url,
1047
+ lineNumber: 660,
1048
+ columnNumber: 19
1049
+ }));
1050
+ }
1051
+ if (props.overrides) {
1052
+ children.push(_$createComponent(GoogleStyleDocOverrides, {
1053
+ get parentClass() {
1054
+ return props.overrides;
1055
+ }
1056
+ }, {
1057
+ fileName: import.meta.url,
1058
+ lineNumber: 663,
1059
+ columnNumber: 19
1060
+ }));
1061
+ }
1062
+ if (props.note) {
1063
+ children.push(_$createComponent(GoogleStyleDocNote, {
1064
+ get message() {
1065
+ return props.note;
1066
+ }
1067
+ }, {
1068
+ fileName: import.meta.url,
1069
+ lineNumber: 666,
1070
+ columnNumber: 19
1071
+ }));
1072
+ }
1073
+ return _$createComponent(PyDoc, {
1074
+ children: children
1075
+ }, {
1076
+ fileName: import.meta.url,
1077
+ lineNumber: 668,
1078
+ columnNumber: 10
1079
+ });
1080
+ }
1081
+ /**
1082
+ * A component that creates a GoogleStyleDoc block for parameters.
1083
+ */
1084
+ function GoogleStyleDocParams(props) {
1085
+ const parameters = props.parameters;
1086
+
1087
+ // Don't render anything if there are no parameters
1088
+ if (!parameters || parameters.length === 0) {
1089
+ return null;
1090
+ }
1091
+ return ["Args:", _$createComponent(Indent, {
1092
+ get children() {
1093
+ return _$createComponent(List, {
1094
+ doubleHardline: true,
1095
+ get children() {
1096
+ return parameters.map(param => _$createComponent(GoogleStyleDocParam, {
1097
+ get name() {
1098
+ return param.name;
1099
+ },
1100
+ get type() {
1101
+ return param.type;
1102
+ },
1103
+ get ["default"]() {
1104
+ return param.default;
1105
+ },
1106
+ get children() {
1107
+ return param.doc;
1108
+ }
1109
+ }, {
1110
+ fileName: import.meta.url,
1111
+ lineNumber: 692,
1112
+ columnNumber: 13
1113
+ }));
1114
+ }
1115
+ }, {
1116
+ fileName: import.meta.url,
1117
+ lineNumber: 690,
1118
+ columnNumber: 9
1119
+ });
1120
+ }
1121
+ }, {
1122
+ fileName: import.meta.url,
1123
+ lineNumber: 689,
1124
+ columnNumber: 7
1125
+ })];
1126
+ }
1127
+ /**
1128
+ * Create a GoogleStyleDoc parameter.
1129
+ */
1130
+ function GoogleStyleDocParam(props) {
1131
+ return [_$createComponent(GoogleStyleDocParamName, {
1132
+ get name() {
1133
+ return props.name;
1134
+ }
1135
+ }, {
1136
+ fileName: import.meta.url,
1137
+ lineNumber: 719,
1138
+ columnNumber: 7
1139
+ }), _$createComponent(GoogleStyleDocParamType, {
1140
+ get type() {
1141
+ return props.type;
1142
+ },
1143
+ get ["default"]() {
1144
+ return Boolean(props.default);
1145
+ }
1146
+ }, {
1147
+ fileName: import.meta.url,
1148
+ lineNumber: 720,
1149
+ columnNumber: 7
1150
+ }), _$createComponent(GoogleStyleDocParamDescription, {
1151
+ get children() {
1152
+ return props.children;
1153
+ },
1154
+ get ["default"]() {
1155
+ return props.default;
1156
+ }
1157
+ }, {
1158
+ fileName: import.meta.url,
1159
+ lineNumber: 724,
1160
+ columnNumber: 7
1161
+ })];
1162
+ }
1163
+ /**
1164
+ * A component that creates a GoogleStyleDoc block for parameters.
1165
+ */
1166
+ function GoogleStyleDocReturn(props) {
1167
+ return ["Returns:", _$createComponent(Indent, {
1168
+ get children() {
1169
+ return props.message;
1170
+ }
1171
+ }, {
1172
+ fileName: import.meta.url,
1173
+ lineNumber: 743,
1174
+ columnNumber: 7
1175
+ })];
1176
+ }
1177
+ /**
1178
+ * A component that creates a GoogleStyleDoc block for exceptions.
1179
+ */
1180
+ function GoogleStyleDocRaises(props) {
1181
+ return ["Raises:", _$createComponent(Indent, {
1182
+ get children() {
1183
+ return props.message;
1184
+ }
1185
+ }, {
1186
+ fileName: import.meta.url,
1187
+ lineNumber: 759,
1188
+ columnNumber: 7
1189
+ })];
1190
+ }
1191
+ /**
1192
+ * A component that creates a GoogleStyleDoc block for generator yields.
1193
+ */
1194
+ function GoogleStyleDocYields(props) {
1195
+ return ["Yields:", _$createComponent(Indent, {
1196
+ get children() {
1197
+ return props.message;
1198
+ }
1199
+ }, {
1200
+ fileName: import.meta.url,
1201
+ lineNumber: 775,
1202
+ columnNumber: 7
1203
+ })];
1204
+ }
1205
+ /**
1206
+ * Create a GoogleStyleDoc attribute entry.
1207
+ */
1208
+ function GoogleStyleDocAttribute(props) {
1209
+ return [_$createComponent(GoogleStyleDocParamName, {
1210
+ get name() {
1211
+ return props.name;
1212
+ }
1213
+ }, {
1214
+ fileName: import.meta.url,
1215
+ lineNumber: 792,
1216
+ columnNumber: 7
1217
+ }), _$createComponent(GoogleStyleDocParamType, {
1218
+ get type() {
1219
+ return props.type;
1220
+ }
1221
+ }, {
1222
+ fileName: import.meta.url,
1223
+ lineNumber: 793,
1224
+ columnNumber: 7
1225
+ }), _$createComponent(GoogleStyleDocParamDescription, {
1226
+ get children() {
1227
+ return props.children;
1228
+ }
1229
+ }, {
1230
+ fileName: import.meta.url,
1231
+ lineNumber: 794,
1232
+ columnNumber: 7
1233
+ })];
1234
+ }
1235
+ /**
1236
+ * A component that creates a GoogleStyleDoc block for attributes.
1237
+ */
1238
+ function GoogleStyleDocAttributes(props) {
1239
+ return ["Attributes:", _$createComponent(Indent, {
1240
+ get children() {
1241
+ return _$createComponent(List, {
1242
+ doubleHardline: true,
1243
+ get children() {
1244
+ return props.attributes.map(attr => _$createComponent(GoogleStyleDocAttribute, {
1245
+ get name() {
1246
+ return attr.name;
1247
+ },
1248
+ get type() {
1249
+ return attr.type;
1250
+ },
1251
+ get children() {
1252
+ return attr.children;
1253
+ }
1254
+ }, {
1255
+ fileName: import.meta.url,
1256
+ lineNumber: 813,
1257
+ columnNumber: 13
1258
+ }));
1259
+ }
1260
+ }, {
1261
+ fileName: import.meta.url,
1262
+ lineNumber: 811,
1263
+ columnNumber: 9
1264
+ });
1265
+ }
1266
+ }, {
1267
+ fileName: import.meta.url,
1268
+ lineNumber: 810,
1269
+ columnNumber: 7
1270
+ })];
1271
+ }
1272
+ /**
1273
+ * A component that creates a GoogleStyleDoc block for notes.
1274
+ */
1275
+ function GoogleStyleDocNote(props) {
1276
+ return ["Note:", _$createComponent(Indent, {
1277
+ get children() {
1278
+ return props.message;
1279
+ }
1280
+ }, {
1281
+ fileName: import.meta.url,
1282
+ lineNumber: 834,
1283
+ columnNumber: 7
1284
+ })];
1285
+ }
1286
+ /**
1287
+ * A component that creates a GoogleStyleDoc block for todo items.
1288
+ */
1289
+ function GoogleStyleDocTodo(props) {
1290
+ return ["Todo:", _$createComponent(Indent, {
1291
+ get children() {
1292
+ return _$createComponent(List, {
1293
+ hardline: true,
1294
+ get children() {
1295
+ return props.items.map(item => ["* ", item]);
1296
+ }
1297
+ }, {
1298
+ fileName: import.meta.url,
1299
+ lineNumber: 851,
1300
+ columnNumber: 9
1301
+ });
1302
+ }
1303
+ }, {
1304
+ fileName: import.meta.url,
1305
+ lineNumber: 850,
1306
+ columnNumber: 7
1307
+ })];
1308
+ }
1309
+ /**
1310
+ * A component that creates a GoogleStyleDoc block for examples.
1311
+ */
1312
+ function GoogleStyleDocExamples(props) {
1313
+ return ["Examples:", _$createComponent(Indent, {
1314
+ get children() {
1315
+ return _$createComponent(List, {
1316
+ doubleHardline: true,
1317
+ get children() {
1318
+ return props.items.map(item => item);
1319
+ }
1320
+ }, {
1321
+ fileName: import.meta.url,
1322
+ lineNumber: 873,
1323
+ columnNumber: 9
1324
+ });
1325
+ }
1326
+ }, {
1327
+ fileName: import.meta.url,
1328
+ lineNumber: 872,
1329
+ columnNumber: 7
1330
+ })];
1331
+ }
1332
+ /**
1333
+ * A component that creates a GoogleStyleDoc block for see also references.
1334
+ */
1335
+ function GoogleStyleDocSeeAlso(props) {
1336
+ return ["See Also:", _$createComponent(Indent, {
1337
+ get children() {
1338
+ return _$createComponent(List, {
1339
+ hardline: true,
1340
+ get children() {
1341
+ return props.items.map(item => [item]);
1342
+ }
1343
+ }, {
1344
+ fileName: import.meta.url,
1345
+ lineNumber: 891,
1346
+ columnNumber: 9
1347
+ });
1348
+ }
1349
+ }, {
1350
+ fileName: import.meta.url,
1351
+ lineNumber: 890,
1352
+ columnNumber: 7
1353
+ })];
1354
+ }
1355
+ /**
1356
+ * A component that creates a GoogleStyleDoc block for warnings.
1357
+ */
1358
+ function GoogleStyleDocWarning(props) {
1359
+ return ["Warning:", _$createComponent(Indent, {
1360
+ get children() {
1361
+ return props.message;
1362
+ }
1363
+ }, {
1364
+ fileName: import.meta.url,
1365
+ lineNumber: 912,
1366
+ columnNumber: 7
1367
+ })];
1368
+ }
1369
+ /**
1370
+ * A component that creates a GoogleStyleDoc block for deprecation notices.
1371
+ */
1372
+ function GoogleStyleDocDeprecated(props) {
1373
+ return ["Deprecated:", _$createComponent(Indent, {
1374
+ get children() {
1375
+ return props.message;
1376
+ }
1377
+ }, {
1378
+ fileName: import.meta.url,
1379
+ lineNumber: 928,
1380
+ columnNumber: 7
1381
+ })];
1382
+ }
1383
+ /**
1384
+ * A component that creates a GoogleStyleDoc block for overridden methods.
1385
+ * This indicates that the method overrides a parent class method.
1386
+ */
1387
+ function GoogleStyleDocOverrides(props) {
1388
+ return ["Overrides:", _$createComponent(Indent, {
1389
+ get children() {
1390
+ return props.parentClass;
1391
+ }
1392
+ }, {
1393
+ fileName: import.meta.url,
1394
+ lineNumber: 945,
1395
+ columnNumber: 7
1396
+ })];
1397
+ }
1398
+ function GoogleStyleDocParamType(props) {
1399
+ return [_$createComponent(Show, {
1400
+ get when() {
1401
+ return Boolean(props.type);
1402
+ },
1403
+ get children() {
1404
+ return [" (", _$memo(() => props.type, false, "props.type"), _$createComponent(Show, {
1405
+ get when() {
1406
+ return props.default;
1407
+ },
1408
+ children: ", optional"
1409
+ }, {
1410
+ fileName: import.meta.url,
1411
+ lineNumber: 961,
1412
+ columnNumber: 9
1413
+ }), ")"];
1414
+ }
1415
+ }, {
1416
+ fileName: import.meta.url,
1417
+ lineNumber: 958,
1418
+ columnNumber: 7
1419
+ })];
1420
+ }
1421
+ function GoogleStyleDocParamName(props) {
1422
+ return [_$memo(() => props.name, false, "props.name")];
1423
+ }
1424
+ function GoogleStyleDocParamDescription(props) {
1425
+ return _$createComponent(Show, {
1426
+ get when() {
1427
+ return Boolean(props.children);
1428
+ },
1429
+ get children() {
1430
+ return [": ", _$createIntrinsic("align", {
1431
+ width: 4,
1432
+ get children() {
1433
+ return _$createComponent(Prose, {
1434
+ get children() {
1435
+ return [_$memo(() => props.children, false, "props.children"), _$createComponent(Show, {
1436
+ get when() {
1437
+ return Boolean(props.default);
1438
+ },
1439
+ get children() {
1440
+ return [_$createIntrinsic("br", {}, {
1441
+ fileName: import.meta.url,
1442
+ lineNumber: 991,
1443
+ columnNumber: 13
1444
+ }), "Defaults to ", _$createComponent(Atom, {
1445
+ get jsValue() {
1446
+ return props.default;
1447
+ }
1448
+ }, {
1449
+ fileName: import.meta.url,
1450
+ lineNumber: 992,
1451
+ columnNumber: 25
1452
+ }), "."];
1453
+ }
1454
+ }, {
1455
+ fileName: import.meta.url,
1456
+ lineNumber: 990,
1457
+ columnNumber: 11
1458
+ })];
1459
+ }
1460
+ }, {
1461
+ fileName: import.meta.url,
1462
+ lineNumber: 988,
1463
+ columnNumber: 9
1464
+ });
1465
+ }
1466
+ }, {
1467
+ fileName: import.meta.url,
1468
+ lineNumber: 987,
1469
+ columnNumber: 7
1470
+ })];
1471
+ }
1472
+ }, {
1473
+ fileName: import.meta.url,
1474
+ lineNumber: 985,
1475
+ columnNumber: 5
1476
+ });
1477
+ }
1478
+ //# sourceMappingURL=PyDoc.js.map