@powerlines/plugin-alloy 0.25.33 → 0.25.34

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 (287) hide show
  1. package/README.md +1 -1
  2. package/dist/core/components/output.cjs +17 -10
  3. package/dist/core/components/output.mjs +18 -12
  4. package/dist/core/components/single-line-comment.cjs +6 -4
  5. package/dist/core/components/single-line-comment.mjs +7 -6
  6. package/dist/core/components/source-file.cjs +10 -6
  7. package/dist/core/components/source-file.mjs +11 -8
  8. package/dist/core/components/spacing.cjs +6 -4
  9. package/dist/core/components/spacing.mjs +7 -6
  10. package/dist/core/contexts/context.mjs +1 -2
  11. package/dist/core/contexts/meta.mjs +1 -2
  12. package/dist/core/contexts/reflection.mjs +1 -2
  13. package/dist/core/helpers/code.mjs +1 -2
  14. package/dist/helpers/capnp.mjs +1 -2
  15. package/dist/helpers/create-builtin.mjs +1 -2
  16. package/dist/helpers/refkey.mjs +1 -2
  17. package/dist/helpers/typescript.mjs +1 -2
  18. package/dist/index.cjs +8 -18
  19. package/dist/index.mjs +8 -19
  20. package/dist/markdown/components/front-matter.cjs +9 -7
  21. package/dist/markdown/components/front-matter.mjs +10 -9
  22. package/dist/markdown/components/markdown-file.cjs +76 -44
  23. package/dist/markdown/components/markdown-file.mjs +77 -46
  24. package/dist/markdown/components/markdown-table.cjs +49 -28
  25. package/dist/markdown/components/markdown-table.mjs +50 -30
  26. package/dist/markdown/contexts/markdown-table.mjs +1 -2
  27. package/dist/render.cjs +3 -3
  28. package/dist/render.mjs +4 -5
  29. package/dist/typescript/components/builtin-file.cjs +29 -19
  30. package/dist/typescript/components/builtin-file.mjs +30 -21
  31. package/dist/typescript/components/class-declaration.cjs +165 -100
  32. package/dist/typescript/components/class-declaration.mjs +166 -102
  33. package/dist/typescript/components/dynamic-import-statement.cjs +2 -6
  34. package/dist/typescript/components/dynamic-import-statement.mjs +3 -8
  35. package/dist/typescript/components/entry-file.cjs +9 -6
  36. package/dist/typescript/components/entry-file.mjs +10 -8
  37. package/dist/typescript/components/infrastructure-file.cjs +9 -6
  38. package/dist/typescript/components/infrastructure-file.mjs +10 -8
  39. package/dist/typescript/components/interface-declaration.cjs +121 -70
  40. package/dist/typescript/components/interface-declaration.mjs +122 -72
  41. package/dist/typescript/components/object-declaration.cjs +76 -44
  42. package/dist/typescript/components/object-declaration.mjs +77 -46
  43. package/dist/typescript/components/property-name.cjs +3 -3
  44. package/dist/typescript/components/property-name.mjs +4 -5
  45. package/dist/typescript/components/record-expression.mjs +1 -2
  46. package/dist/typescript/components/tsdoc-reflection.cjs +225 -104
  47. package/dist/typescript/components/tsdoc-reflection.mjs +226 -106
  48. package/dist/typescript/components/tsdoc.cjs +255 -160
  49. package/dist/typescript/components/tsdoc.mjs +256 -162
  50. package/dist/typescript/components/type-declaration.cjs +20 -15
  51. package/dist/typescript/components/type-declaration.mjs +21 -17
  52. package/dist/typescript/components/type-parameters.cjs +55 -29
  53. package/dist/typescript/components/type-parameters.mjs +56 -31
  54. package/dist/typescript/components/typescript-file.cjs +145 -80
  55. package/dist/typescript/components/typescript-file.mjs +146 -82
  56. package/dist/typescript/contexts/lexical-scope.cjs +5 -3
  57. package/dist/typescript/contexts/lexical-scope.mjs +6 -5
  58. package/dist/typescript/contexts/member-scope.cjs +5 -3
  59. package/dist/typescript/contexts/member-scope.mjs +6 -5
  60. package/dist/typescript/helpers/get-call-signature-props.mjs +1 -2
  61. package/dist/typescript/helpers/utilities.mjs +1 -2
  62. package/dist/yaml/components/yaml-file.cjs +92 -47
  63. package/dist/yaml/components/yaml-file.mjs +93 -49
  64. package/package.json +16 -17
  65. package/dist/core/components/index.d.cts +0 -5
  66. package/dist/core/components/index.d.mts +0 -5
  67. package/dist/core/components/output.d.cts +0 -24
  68. package/dist/core/components/output.d.cts.map +0 -1
  69. package/dist/core/components/output.d.mts +0 -24
  70. package/dist/core/components/output.d.mts.map +0 -1
  71. package/dist/core/components/output.mjs.map +0 -1
  72. package/dist/core/components/single-line-comment.d.cts +0 -23
  73. package/dist/core/components/single-line-comment.d.cts.map +0 -1
  74. package/dist/core/components/single-line-comment.d.mts +0 -23
  75. package/dist/core/components/single-line-comment.d.mts.map +0 -1
  76. package/dist/core/components/single-line-comment.mjs.map +0 -1
  77. package/dist/core/components/source-file.d.cts +0 -33
  78. package/dist/core/components/source-file.d.cts.map +0 -1
  79. package/dist/core/components/source-file.d.mts +0 -33
  80. package/dist/core/components/source-file.d.mts.map +0 -1
  81. package/dist/core/components/source-file.mjs.map +0 -1
  82. package/dist/core/components/spacing.d.cts +0 -24
  83. package/dist/core/components/spacing.d.cts.map +0 -1
  84. package/dist/core/components/spacing.d.mts +0 -24
  85. package/dist/core/components/spacing.d.mts.map +0 -1
  86. package/dist/core/components/spacing.mjs.map +0 -1
  87. package/dist/core/contexts/context.d.cts +0 -29
  88. package/dist/core/contexts/context.d.cts.map +0 -1
  89. package/dist/core/contexts/context.d.mts +0 -29
  90. package/dist/core/contexts/context.d.mts.map +0 -1
  91. package/dist/core/contexts/context.mjs.map +0 -1
  92. package/dist/core/contexts/index.d.cts +0 -4
  93. package/dist/core/contexts/index.d.mts +0 -4
  94. package/dist/core/contexts/meta.d.cts +0 -48
  95. package/dist/core/contexts/meta.d.cts.map +0 -1
  96. package/dist/core/contexts/meta.d.mts +0 -48
  97. package/dist/core/contexts/meta.d.mts.map +0 -1
  98. package/dist/core/contexts/meta.mjs.map +0 -1
  99. package/dist/core/contexts/reflection.d.cts +0 -53
  100. package/dist/core/contexts/reflection.d.cts.map +0 -1
  101. package/dist/core/contexts/reflection.d.mts +0 -53
  102. package/dist/core/contexts/reflection.d.mts.map +0 -1
  103. package/dist/core/contexts/reflection.mjs.map +0 -1
  104. package/dist/core/helpers/code.d.cts +0 -29
  105. package/dist/core/helpers/code.d.cts.map +0 -1
  106. package/dist/core/helpers/code.d.mts +0 -29
  107. package/dist/core/helpers/code.d.mts.map +0 -1
  108. package/dist/core/helpers/code.mjs.map +0 -1
  109. package/dist/core/helpers/index.d.cts +0 -2
  110. package/dist/core/helpers/index.d.mts +0 -2
  111. package/dist/core/index.d.cts +0 -9
  112. package/dist/core/index.d.mts +0 -9
  113. package/dist/helpers/capnp.d.cts +0 -87
  114. package/dist/helpers/capnp.d.cts.map +0 -1
  115. package/dist/helpers/capnp.d.mts +0 -87
  116. package/dist/helpers/capnp.d.mts.map +0 -1
  117. package/dist/helpers/capnp.mjs.map +0 -1
  118. package/dist/helpers/create-builtin.d.cts +0 -16
  119. package/dist/helpers/create-builtin.d.cts.map +0 -1
  120. package/dist/helpers/create-builtin.d.mts +0 -16
  121. package/dist/helpers/create-builtin.d.mts.map +0 -1
  122. package/dist/helpers/create-builtin.mjs.map +0 -1
  123. package/dist/helpers/index.d.cts +0 -5
  124. package/dist/helpers/index.d.mts +0 -5
  125. package/dist/helpers/refkey.d.cts +0 -13
  126. package/dist/helpers/refkey.d.cts.map +0 -1
  127. package/dist/helpers/refkey.d.mts +0 -13
  128. package/dist/helpers/refkey.d.mts.map +0 -1
  129. package/dist/helpers/refkey.mjs.map +0 -1
  130. package/dist/helpers/typescript.d.cts +0 -26
  131. package/dist/helpers/typescript.d.cts.map +0 -1
  132. package/dist/helpers/typescript.d.mts +0 -26
  133. package/dist/helpers/typescript.d.mts.map +0 -1
  134. package/dist/helpers/typescript.mjs.map +0 -1
  135. package/dist/index.d.cts +0 -19
  136. package/dist/index.d.cts.map +0 -1
  137. package/dist/index.d.mts +0 -19
  138. package/dist/index.d.mts.map +0 -1
  139. package/dist/index.mjs.map +0 -1
  140. package/dist/markdown/components/front-matter.d.cts +0 -16
  141. package/dist/markdown/components/front-matter.d.cts.map +0 -1
  142. package/dist/markdown/components/front-matter.d.mts +0 -16
  143. package/dist/markdown/components/front-matter.d.mts.map +0 -1
  144. package/dist/markdown/components/front-matter.mjs.map +0 -1
  145. package/dist/markdown/components/index.d.cts +0 -4
  146. package/dist/markdown/components/index.d.mts +0 -4
  147. package/dist/markdown/components/markdown-file.d.cts +0 -29
  148. package/dist/markdown/components/markdown-file.d.cts.map +0 -1
  149. package/dist/markdown/components/markdown-file.d.mts +0 -29
  150. package/dist/markdown/components/markdown-file.d.mts.map +0 -1
  151. package/dist/markdown/components/markdown-file.mjs.map +0 -1
  152. package/dist/markdown/components/markdown-table.d.cts +0 -28
  153. package/dist/markdown/components/markdown-table.d.cts.map +0 -1
  154. package/dist/markdown/components/markdown-table.d.mts +0 -28
  155. package/dist/markdown/components/markdown-table.d.mts.map +0 -1
  156. package/dist/markdown/components/markdown-table.mjs.map +0 -1
  157. package/dist/markdown/contexts/index.d.cts +0 -2
  158. package/dist/markdown/contexts/index.d.mts +0 -2
  159. package/dist/markdown/contexts/markdown-table.d.cts +0 -38
  160. package/dist/markdown/contexts/markdown-table.d.cts.map +0 -1
  161. package/dist/markdown/contexts/markdown-table.d.mts +0 -38
  162. package/dist/markdown/contexts/markdown-table.d.mts.map +0 -1
  163. package/dist/markdown/contexts/markdown-table.mjs.map +0 -1
  164. package/dist/markdown/index.d.cts +0 -5
  165. package/dist/markdown/index.d.mts +0 -5
  166. package/dist/render.d.cts +0 -38
  167. package/dist/render.d.cts.map +0 -1
  168. package/dist/render.d.mts +0 -38
  169. package/dist/render.d.mts.map +0 -1
  170. package/dist/render.mjs.map +0 -1
  171. package/dist/types/components.d.cts +0 -142
  172. package/dist/types/components.d.cts.map +0 -1
  173. package/dist/types/components.d.mts +0 -142
  174. package/dist/types/components.d.mts.map +0 -1
  175. package/dist/types/index.d.cts +0 -3
  176. package/dist/types/index.d.mts +0 -3
  177. package/dist/types/plugin.d.cts +0 -39
  178. package/dist/types/plugin.d.cts.map +0 -1
  179. package/dist/types/plugin.d.mts +0 -39
  180. package/dist/types/plugin.d.mts.map +0 -1
  181. package/dist/typescript/components/builtin-file.d.cts +0 -35
  182. package/dist/typescript/components/builtin-file.d.cts.map +0 -1
  183. package/dist/typescript/components/builtin-file.d.mts +0 -35
  184. package/dist/typescript/components/builtin-file.d.mts.map +0 -1
  185. package/dist/typescript/components/builtin-file.mjs.map +0 -1
  186. package/dist/typescript/components/class-declaration.d.cts +0 -145
  187. package/dist/typescript/components/class-declaration.d.cts.map +0 -1
  188. package/dist/typescript/components/class-declaration.d.mts +0 -145
  189. package/dist/typescript/components/class-declaration.d.mts.map +0 -1
  190. package/dist/typescript/components/class-declaration.mjs.map +0 -1
  191. package/dist/typescript/components/dynamic-import-statement.d.cts +0 -33
  192. package/dist/typescript/components/dynamic-import-statement.d.cts.map +0 -1
  193. package/dist/typescript/components/dynamic-import-statement.d.mts +0 -33
  194. package/dist/typescript/components/dynamic-import-statement.d.mts.map +0 -1
  195. package/dist/typescript/components/dynamic-import-statement.mjs.map +0 -1
  196. package/dist/typescript/components/entry-file.d.cts +0 -28
  197. package/dist/typescript/components/entry-file.d.cts.map +0 -1
  198. package/dist/typescript/components/entry-file.d.mts +0 -28
  199. package/dist/typescript/components/entry-file.d.mts.map +0 -1
  200. package/dist/typescript/components/entry-file.mjs.map +0 -1
  201. package/dist/typescript/components/index.d.cts +0 -15
  202. package/dist/typescript/components/index.d.mts +0 -15
  203. package/dist/typescript/components/infrastructure-file.d.cts +0 -21
  204. package/dist/typescript/components/infrastructure-file.d.cts.map +0 -1
  205. package/dist/typescript/components/infrastructure-file.d.mts +0 -21
  206. package/dist/typescript/components/infrastructure-file.d.mts.map +0 -1
  207. package/dist/typescript/components/infrastructure-file.mjs.map +0 -1
  208. package/dist/typescript/components/interface-declaration.d.cts +0 -86
  209. package/dist/typescript/components/interface-declaration.d.cts.map +0 -1
  210. package/dist/typescript/components/interface-declaration.d.mts +0 -86
  211. package/dist/typescript/components/interface-declaration.d.mts.map +0 -1
  212. package/dist/typescript/components/interface-declaration.mjs.map +0 -1
  213. package/dist/typescript/components/object-declaration.d.cts +0 -30
  214. package/dist/typescript/components/object-declaration.d.cts.map +0 -1
  215. package/dist/typescript/components/object-declaration.d.mts +0 -30
  216. package/dist/typescript/components/object-declaration.d.mts.map +0 -1
  217. package/dist/typescript/components/object-declaration.mjs.map +0 -1
  218. package/dist/typescript/components/property-name.d.cts +0 -24
  219. package/dist/typescript/components/property-name.d.cts.map +0 -1
  220. package/dist/typescript/components/property-name.d.mts +0 -24
  221. package/dist/typescript/components/property-name.d.mts.map +0 -1
  222. package/dist/typescript/components/property-name.mjs.map +0 -1
  223. package/dist/typescript/components/record-expression.d.cts +0 -13
  224. package/dist/typescript/components/record-expression.d.cts.map +0 -1
  225. package/dist/typescript/components/record-expression.d.mts +0 -13
  226. package/dist/typescript/components/record-expression.d.mts.map +0 -1
  227. package/dist/typescript/components/record-expression.mjs.map +0 -1
  228. package/dist/typescript/components/tsdoc-reflection.d.cts +0 -44
  229. package/dist/typescript/components/tsdoc-reflection.d.cts.map +0 -1
  230. package/dist/typescript/components/tsdoc-reflection.d.mts +0 -44
  231. package/dist/typescript/components/tsdoc-reflection.d.mts.map +0 -1
  232. package/dist/typescript/components/tsdoc-reflection.mjs.map +0 -1
  233. package/dist/typescript/components/tsdoc.d.cts +0 -164
  234. package/dist/typescript/components/tsdoc.d.cts.map +0 -1
  235. package/dist/typescript/components/tsdoc.d.mts +0 -164
  236. package/dist/typescript/components/tsdoc.d.mts.map +0 -1
  237. package/dist/typescript/components/tsdoc.mjs.map +0 -1
  238. package/dist/typescript/components/type-declaration.d.cts +0 -18
  239. package/dist/typescript/components/type-declaration.d.cts.map +0 -1
  240. package/dist/typescript/components/type-declaration.d.mts +0 -18
  241. package/dist/typescript/components/type-declaration.d.mts.map +0 -1
  242. package/dist/typescript/components/type-declaration.mjs.map +0 -1
  243. package/dist/typescript/components/type-parameters.d.cts +0 -24
  244. package/dist/typescript/components/type-parameters.d.cts.map +0 -1
  245. package/dist/typescript/components/type-parameters.d.mts +0 -24
  246. package/dist/typescript/components/type-parameters.d.mts.map +0 -1
  247. package/dist/typescript/components/type-parameters.mjs.map +0 -1
  248. package/dist/typescript/components/typescript-file.d.cts +0 -50
  249. package/dist/typescript/components/typescript-file.d.cts.map +0 -1
  250. package/dist/typescript/components/typescript-file.d.mts +0 -50
  251. package/dist/typescript/components/typescript-file.d.mts.map +0 -1
  252. package/dist/typescript/components/typescript-file.mjs.map +0 -1
  253. package/dist/typescript/contexts/index.d.cts +0 -2
  254. package/dist/typescript/contexts/index.d.mts +0 -2
  255. package/dist/typescript/contexts/lexical-scope.d.cts +0 -17
  256. package/dist/typescript/contexts/lexical-scope.d.cts.map +0 -1
  257. package/dist/typescript/contexts/lexical-scope.d.mts +0 -17
  258. package/dist/typescript/contexts/lexical-scope.d.mts.map +0 -1
  259. package/dist/typescript/contexts/lexical-scope.mjs.map +0 -1
  260. package/dist/typescript/contexts/member-scope.d.cts +0 -20
  261. package/dist/typescript/contexts/member-scope.d.cts.map +0 -1
  262. package/dist/typescript/contexts/member-scope.d.mts +0 -20
  263. package/dist/typescript/contexts/member-scope.d.mts.map +0 -1
  264. package/dist/typescript/contexts/member-scope.mjs.map +0 -1
  265. package/dist/typescript/helpers/get-call-signature-props.d.cts +0 -14
  266. package/dist/typescript/helpers/get-call-signature-props.d.cts.map +0 -1
  267. package/dist/typescript/helpers/get-call-signature-props.d.mts +0 -14
  268. package/dist/typescript/helpers/get-call-signature-props.d.mts.map +0 -1
  269. package/dist/typescript/helpers/get-call-signature-props.mjs.map +0 -1
  270. package/dist/typescript/helpers/index.d.cts +0 -3
  271. package/dist/typescript/helpers/index.d.mts +0 -3
  272. package/dist/typescript/helpers/utilities.d.cts +0 -11
  273. package/dist/typescript/helpers/utilities.d.cts.map +0 -1
  274. package/dist/typescript/helpers/utilities.d.mts +0 -11
  275. package/dist/typescript/helpers/utilities.d.mts.map +0 -1
  276. package/dist/typescript/helpers/utilities.mjs.map +0 -1
  277. package/dist/typescript/index.d.cts +0 -18
  278. package/dist/typescript/index.d.mts +0 -18
  279. package/dist/yaml/components/index.d.cts +0 -2
  280. package/dist/yaml/components/index.d.mts +0 -2
  281. package/dist/yaml/components/yaml-file.d.cts +0 -34
  282. package/dist/yaml/components/yaml-file.d.cts.map +0 -1
  283. package/dist/yaml/components/yaml-file.d.mts +0 -34
  284. package/dist/yaml/components/yaml-file.d.mts.map +0 -1
  285. package/dist/yaml/components/yaml-file.mjs.map +0 -1
  286. package/dist/yaml/index.d.cts +0 -2
  287. package/dist/yaml/index.d.mts +0 -2
@@ -6,8 +6,8 @@ const require_typescript_contexts_member_scope = require('../contexts/member-sco
6
6
  const require_typescript_components_property_name = require('./property-name.cjs');
7
7
  const require_typescript_components_type_parameters = require('./type-parameters.cjs');
8
8
  const require_typescript_components_tsdoc_reflection = require('./tsdoc-reflection.cjs');
9
- let _alloy_js_core = require("@alloy-js/core");
10
9
  let _alloy_js_core_jsx_runtime = require("@alloy-js/core/jsx-runtime");
10
+ let _alloy_js_core = require("@alloy-js/core");
11
11
  let _powerlines_deepkit_vendor_type = require("@powerlines/deepkit/vendor/type");
12
12
  let _stryke_string_format_pascal_case = require("@stryke/string-format/pascal-case");
13
13
  let _stryke_type_checks_is_string = require("@stryke/type-checks/is-string");
@@ -20,10 +20,16 @@ const InterfaceExpression = (0, _alloy_js_typescript.ensureTypeRefContext)(funct
20
20
  binder: (0, _alloy_js_typescript.useTSLexicalScope)()?.binder
21
21
  });
22
22
  (0, _alloy_js_core.emitSymbol)(symbol);
23
- return /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)("group", { children: /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(require_typescript_contexts_member_scope.MemberScope, {
24
- ownerSymbol: symbol,
25
- children: /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(_alloy_js_core.Block, { children: props.children })
26
- }) });
23
+ return (0, _alloy_js_core_jsx_runtime.createIntrinsic)("group", { get children() {
24
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(require_typescript_contexts_member_scope.MemberScope, {
25
+ ownerSymbol: symbol,
26
+ get children() {
27
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.Block, { get children() {
28
+ return props.children;
29
+ } });
30
+ }
31
+ });
32
+ } });
27
33
  });
28
34
  /**
29
35
  * Create a TypeScript interface member.
@@ -37,17 +43,23 @@ const InterfaceExpression = (0, _alloy_js_typescript.ensureTypeRefContext)(funct
37
43
  function InterfaceMember(props) {
38
44
  const type = props.type ?? props.children;
39
45
  const readonly = props.readonly ? "readonly " : "";
40
- if ("indexer" in props) return /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsxs)(_alloy_js_core_jsx_runtime.Fragment, { children: [
41
- /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(_alloy_js_core.Show, {
42
- when: Boolean(props.doc),
43
- children: /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(require_typescript_components_tsdoc.TSDoc, { heading: props.doc })
46
+ if ("indexer" in props) return [
47
+ (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.Show, {
48
+ get when() {
49
+ return Boolean(props.doc);
50
+ },
51
+ get children() {
52
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(require_typescript_components_tsdoc.TSDoc, { get heading() {
53
+ return props.doc;
54
+ } });
55
+ }
44
56
  }),
45
57
  readonly,
46
58
  "[",
47
- props.indexer,
59
+ (0, _alloy_js_core_jsx_runtime.memo)(() => props.indexer),
48
60
  "]: ",
49
61
  type
50
- ] });
62
+ ];
51
63
  const optionality = props.optional ? "?" : "";
52
64
  const scope = (0, _alloy_js_typescript.useTSMemberScope)();
53
65
  const sym = (0, _alloy_js_core.createSymbol)(_alloy_js_typescript.TSOutputSymbol, props.name, scope.ownerSymbol.staticMembers, {
@@ -62,25 +74,33 @@ function InterfaceMember(props) {
62
74
  const symbol = Array.from(taken)[0];
63
75
  if (symbol?.isTransient) symbol.moveMembersTo(sym);
64
76
  });
65
- return /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsxs)(_alloy_js_core.MemberDeclaration, {
77
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.MemberDeclaration, {
66
78
  symbol: sym,
67
- children: [
68
- /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(_alloy_js_core.Show, {
69
- when: Boolean(props.doc),
70
- children: /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(require_typescript_components_tsdoc.TSDoc, { heading: props.doc })
71
- }),
72
- readonly,
73
- /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(require_typescript_components_property_name.PropertyName, {}),
74
- optionality,
75
- ": ",
76
- type
77
- ]
79
+ get children() {
80
+ return [
81
+ (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.Show, {
82
+ get when() {
83
+ return Boolean(props.doc);
84
+ },
85
+ get children() {
86
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(require_typescript_components_tsdoc.TSDoc, { get heading() {
87
+ return props.doc;
88
+ } });
89
+ }
90
+ }),
91
+ readonly,
92
+ (0, _alloy_js_core_jsx_runtime.createComponent)(require_typescript_components_property_name.PropertyName, {}),
93
+ optionality,
94
+ ": ",
95
+ type
96
+ ];
97
+ }
78
98
  });
79
99
  }
80
100
  const BaseInterfaceDeclaration = (0, _alloy_js_typescript.ensureTypeRefContext)(function InterfaceDeclaration(props) {
81
101
  const ExprSlot = (0, _alloy_js_core.createSymbolSlot)();
82
102
  const children = (0, _alloy_js_core.childrenArray)(() => props.children);
83
- const extendsPart = props.extends ? /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsxs)(_alloy_js_core_jsx_runtime.Fragment, { children: [" extends ", props.extends] }) : "";
103
+ const extendsPart = props.extends ? [" extends ", (0, _alloy_js_core_jsx_runtime.memo)(() => props.extends)] : "";
84
104
  const filteredChildren = (0, _alloy_js_core.findUnkeyedChildren)(children);
85
105
  const currentScope = (0, _alloy_js_typescript.useTSLexicalScope)();
86
106
  const binder = currentScope?.binder;
@@ -99,23 +119,34 @@ const BaseInterfaceDeclaration = (0, _alloy_js_typescript.ensureTypeRefContext)(
99
119
  for (const symbol of takenSymbols) if (symbol.isTransient) symbol.moveMembersTo(sym);
100
120
  }
101
121
  });
102
- return /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsxs)(_alloy_js_core_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(_alloy_js_core.Show, {
103
- when: Boolean(props.doc),
104
- children: /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(require_typescript_components_tsdoc.TSDoc, { heading: props.doc })
105
- }), /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsxs)(_alloy_js_typescript.Declaration, {
106
- ...props,
122
+ return [(0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.Show, {
123
+ get when() {
124
+ return Boolean(props.doc);
125
+ },
126
+ get children() {
127
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(require_typescript_components_tsdoc.TSDoc, { get heading() {
128
+ return props.doc;
129
+ } });
130
+ }
131
+ }), (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_typescript.Declaration, (0, _alloy_js_core_jsx_runtime.mergeProps)(props, {
107
132
  nameKind: "interface",
108
133
  kind: "type",
109
134
  symbol: sym,
110
- children: [
111
- "interface ",
112
- /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(_alloy_js_core.Name, {}),
113
- props.typeParameters && /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(require_typescript_components_type_parameters.TypeParameters, { parameters: props.typeParameters }),
114
- extendsPart,
115
- " ",
116
- /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(ExprSlot, { children: /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(InterfaceExpression, { children: filteredChildren }) })
117
- ]
118
- })] });
135
+ get children() {
136
+ return [
137
+ "interface ",
138
+ (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.Name, {}),
139
+ (0, _alloy_js_core_jsx_runtime.memo)(() => (0, _alloy_js_core_jsx_runtime.memo)(() => !!props.typeParameters)() && (0, _alloy_js_core_jsx_runtime.createComponent)(require_typescript_components_type_parameters.TypeParameters, { get parameters() {
140
+ return props.typeParameters;
141
+ } })),
142
+ extendsPart,
143
+ " ",
144
+ (0, _alloy_js_core_jsx_runtime.createComponent)(ExprSlot, { get children() {
145
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(InterfaceExpression, { children: filteredChildren });
146
+ } })
147
+ ];
148
+ }
149
+ }))];
119
150
  });
120
151
  /**
121
152
  * Generates a TypeScript interface for the given reflection class.
@@ -128,29 +159,38 @@ function InterfaceDeclaration(props) {
128
159
  ]);
129
160
  const interfaceName = (0, _alloy_js_core.computed)(() => (0, _stryke_string_format_pascal_case.pascalCase)(((0, _stryke_type_checks_is_string.isString)(name) ? name : name.toString()) || reflection?.getName()));
130
161
  const properties = (0, _alloy_js_core.computed)(() => reflection ? reflection.getProperties().filter((item) => !item.isIgnored()).sort((a, b) => a.isReadonly() && b.isReadonly() || !a.isReadonly() && !b.isReadonly() ? a.getNameAsString().localeCompare(b.getNameAsString()) : a.isReadonly() ? 1 : -1) : []);
131
- return /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(_alloy_js_core.Show, {
132
- when: reflection && properties.value.length > 0,
133
- fallback: /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(BaseInterfaceDeclaration, {
134
- ...props,
135
- name: interfaceName.value
136
- }),
137
- children: /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsxs)(require_core_contexts_reflection.ReflectionClassContext.Provider, {
138
- value: { reflection },
139
- children: [/* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(require_typescript_components_tsdoc_reflection.TSDocReflectionClass, {
140
- heading: doc,
141
- reflection
142
- }), /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(BaseInterfaceDeclaration, {
143
- export: true,
144
- name: interfaceName.value,
145
- ...rest,
146
- children: /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(_alloy_js_core.For, {
147
- each: properties,
148
- doubleHardline: true,
149
- semicolon: true,
150
- children: (prop) => /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(InterfaceDeclarationProperty, { property: prop })
151
- })
152
- })]
153
- })
162
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.Show, {
163
+ get when() {
164
+ return reflection && properties.value.length > 0;
165
+ },
166
+ get fallback() {
167
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(BaseInterfaceDeclaration, (0, _alloy_js_core_jsx_runtime.mergeProps)(props, { get name() {
168
+ return interfaceName.value;
169
+ } }));
170
+ },
171
+ get children() {
172
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(require_core_contexts_reflection.ReflectionClassContext.Provider, {
173
+ value: { reflection },
174
+ get children() {
175
+ return [(0, _alloy_js_core_jsx_runtime.createComponent)(require_typescript_components_tsdoc_reflection.TSDocReflectionClass, {
176
+ heading: doc,
177
+ reflection
178
+ }), (0, _alloy_js_core_jsx_runtime.createComponent)(BaseInterfaceDeclaration, (0, _alloy_js_core_jsx_runtime.mergeProps)({
179
+ "export": true,
180
+ get name() {
181
+ return interfaceName.value;
182
+ }
183
+ }, rest, { get children() {
184
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.For, {
185
+ each: properties,
186
+ doubleHardline: true,
187
+ semicolon: true,
188
+ children: (prop) => (0, _alloy_js_core_jsx_runtime.createComponent)(InterfaceDeclarationProperty, { property: prop })
189
+ });
190
+ } }))];
191
+ }
192
+ });
193
+ }
154
194
  });
155
195
  }
156
196
  /**
@@ -158,16 +198,27 @@ function InterfaceDeclaration(props) {
158
198
  */
159
199
  function InterfaceDeclarationProperty(props) {
160
200
  const [{ property }, rest] = (0, _alloy_js_core.splitProps)(props, ["property"]);
161
- return /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsxs)(require_core_contexts_reflection.ReflectionPropertyContext.Provider, {
201
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(require_core_contexts_reflection.ReflectionPropertyContext.Provider, {
162
202
  value: property,
163
- children: [/* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(require_typescript_components_tsdoc_reflection.TSDocContextProperty, {}), /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(InterfaceMember, {
164
- name: property.getNameAsString(),
165
- readonly: property.isReadonly(),
166
- optional: property.isOptional(),
167
- nullish: property.isNullable(),
168
- type: (0, _powerlines_deepkit_vendor_type.stringifyType)(property.getType()),
169
- ...rest
170
- })]
203
+ get children() {
204
+ return [(0, _alloy_js_core_jsx_runtime.createComponent)(require_typescript_components_tsdoc_reflection.TSDocContextProperty, {}), (0, _alloy_js_core_jsx_runtime.createComponent)(InterfaceMember, (0, _alloy_js_core_jsx_runtime.mergeProps)({
205
+ get name() {
206
+ return property.getNameAsString();
207
+ },
208
+ get readonly() {
209
+ return property.isReadonly();
210
+ },
211
+ get optional() {
212
+ return property.isOptional();
213
+ },
214
+ get nullish() {
215
+ return property.isNullable();
216
+ },
217
+ get type() {
218
+ return (0, _powerlines_deepkit_vendor_type.stringifyType)(property.getType());
219
+ }
220
+ }, rest))];
221
+ }
171
222
  });
172
223
  }
173
224
 
@@ -4,8 +4,8 @@ import { MemberScope as MemberScope$1 } from "../contexts/member-scope.mjs";
4
4
  import { PropertyName } from "./property-name.mjs";
5
5
  import { TypeParameters } from "./type-parameters.mjs";
6
6
  import { TSDocContextProperty, TSDocReflectionClass } from "./tsdoc-reflection.mjs";
7
+ import { createComponent, createIntrinsic, memo, mergeProps } from "@alloy-js/core/jsx-runtime";
7
8
  import { Block, For, MemberDeclaration, Name, Show, childrenArray, computed, createSymbol, createSymbolSlot, effect, emitSymbol, findUnkeyedChildren, splitProps, takeSymbols } from "@alloy-js/core";
8
- import { Fragment, jsx, jsxs } from "@alloy-js/core/jsx-runtime";
9
9
  import { stringifyType } from "@powerlines/deepkit/vendor/type";
10
10
  import { pascalCase } from "@stryke/string-format/pascal-case";
11
11
  import { isString } from "@stryke/type-checks/is-string";
@@ -18,10 +18,16 @@ const InterfaceExpression = ensureTypeRefContext(function InterfaceExpression(pr
18
18
  binder: useTSLexicalScope()?.binder
19
19
  });
20
20
  emitSymbol(symbol);
21
- return /* @__PURE__ */ jsx("group", { children: /* @__PURE__ */ jsx(MemberScope$1, {
22
- ownerSymbol: symbol,
23
- children: /* @__PURE__ */ jsx(Block, { children: props.children })
24
- }) });
21
+ return createIntrinsic("group", { get children() {
22
+ return createComponent(MemberScope$1, {
23
+ ownerSymbol: symbol,
24
+ get children() {
25
+ return createComponent(Block, { get children() {
26
+ return props.children;
27
+ } });
28
+ }
29
+ });
30
+ } });
25
31
  });
26
32
  /**
27
33
  * Create a TypeScript interface member.
@@ -35,17 +41,23 @@ const InterfaceExpression = ensureTypeRefContext(function InterfaceExpression(pr
35
41
  function InterfaceMember(props) {
36
42
  const type = props.type ?? props.children;
37
43
  const readonly = props.readonly ? "readonly " : "";
38
- if ("indexer" in props) return /* @__PURE__ */ jsxs(Fragment, { children: [
39
- /* @__PURE__ */ jsx(Show, {
40
- when: Boolean(props.doc),
41
- children: /* @__PURE__ */ jsx(TSDoc, { heading: props.doc })
44
+ if ("indexer" in props) return [
45
+ createComponent(Show, {
46
+ get when() {
47
+ return Boolean(props.doc);
48
+ },
49
+ get children() {
50
+ return createComponent(TSDoc, { get heading() {
51
+ return props.doc;
52
+ } });
53
+ }
42
54
  }),
43
55
  readonly,
44
56
  "[",
45
- props.indexer,
57
+ memo(() => props.indexer),
46
58
  "]: ",
47
59
  type
48
- ] });
60
+ ];
49
61
  const optionality = props.optional ? "?" : "";
50
62
  const scope = useTSMemberScope();
51
63
  const sym = createSymbol(TSOutputSymbol, props.name, scope.ownerSymbol.staticMembers, {
@@ -60,25 +72,33 @@ function InterfaceMember(props) {
60
72
  const symbol = Array.from(taken)[0];
61
73
  if (symbol?.isTransient) symbol.moveMembersTo(sym);
62
74
  });
63
- return /* @__PURE__ */ jsxs(MemberDeclaration, {
75
+ return createComponent(MemberDeclaration, {
64
76
  symbol: sym,
65
- children: [
66
- /* @__PURE__ */ jsx(Show, {
67
- when: Boolean(props.doc),
68
- children: /* @__PURE__ */ jsx(TSDoc, { heading: props.doc })
69
- }),
70
- readonly,
71
- /* @__PURE__ */ jsx(PropertyName, {}),
72
- optionality,
73
- ": ",
74
- type
75
- ]
77
+ get children() {
78
+ return [
79
+ createComponent(Show, {
80
+ get when() {
81
+ return Boolean(props.doc);
82
+ },
83
+ get children() {
84
+ return createComponent(TSDoc, { get heading() {
85
+ return props.doc;
86
+ } });
87
+ }
88
+ }),
89
+ readonly,
90
+ createComponent(PropertyName, {}),
91
+ optionality,
92
+ ": ",
93
+ type
94
+ ];
95
+ }
76
96
  });
77
97
  }
78
98
  const BaseInterfaceDeclaration = ensureTypeRefContext(function InterfaceDeclaration(props) {
79
99
  const ExprSlot = createSymbolSlot();
80
100
  const children = childrenArray(() => props.children);
81
- const extendsPart = props.extends ? /* @__PURE__ */ jsxs(Fragment, { children: [" extends ", props.extends] }) : "";
101
+ const extendsPart = props.extends ? [" extends ", memo(() => props.extends)] : "";
82
102
  const filteredChildren = findUnkeyedChildren(children);
83
103
  const currentScope = useTSLexicalScope();
84
104
  const binder = currentScope?.binder;
@@ -97,23 +117,34 @@ const BaseInterfaceDeclaration = ensureTypeRefContext(function InterfaceDeclarat
97
117
  for (const symbol of takenSymbols) if (symbol.isTransient) symbol.moveMembersTo(sym);
98
118
  }
99
119
  });
100
- return /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(Show, {
101
- when: Boolean(props.doc),
102
- children: /* @__PURE__ */ jsx(TSDoc, { heading: props.doc })
103
- }), /* @__PURE__ */ jsxs(Declaration$1, {
104
- ...props,
120
+ return [createComponent(Show, {
121
+ get when() {
122
+ return Boolean(props.doc);
123
+ },
124
+ get children() {
125
+ return createComponent(TSDoc, { get heading() {
126
+ return props.doc;
127
+ } });
128
+ }
129
+ }), createComponent(Declaration$1, mergeProps(props, {
105
130
  nameKind: "interface",
106
131
  kind: "type",
107
132
  symbol: sym,
108
- children: [
109
- "interface ",
110
- /* @__PURE__ */ jsx(Name, {}),
111
- props.typeParameters && /* @__PURE__ */ jsx(TypeParameters, { parameters: props.typeParameters }),
112
- extendsPart,
113
- " ",
114
- /* @__PURE__ */ jsx(ExprSlot, { children: /* @__PURE__ */ jsx(InterfaceExpression, { children: filteredChildren }) })
115
- ]
116
- })] });
133
+ get children() {
134
+ return [
135
+ "interface ",
136
+ createComponent(Name, {}),
137
+ memo(() => memo(() => !!props.typeParameters)() && createComponent(TypeParameters, { get parameters() {
138
+ return props.typeParameters;
139
+ } })),
140
+ extendsPart,
141
+ " ",
142
+ createComponent(ExprSlot, { get children() {
143
+ return createComponent(InterfaceExpression, { children: filteredChildren });
144
+ } })
145
+ ];
146
+ }
147
+ }))];
117
148
  });
118
149
  /**
119
150
  * Generates a TypeScript interface for the given reflection class.
@@ -126,29 +157,38 @@ function InterfaceDeclaration(props) {
126
157
  ]);
127
158
  const interfaceName = computed(() => pascalCase((isString(name) ? name : name.toString()) || reflection?.getName()));
128
159
  const properties = computed(() => reflection ? reflection.getProperties().filter((item) => !item.isIgnored()).sort((a, b) => a.isReadonly() && b.isReadonly() || !a.isReadonly() && !b.isReadonly() ? a.getNameAsString().localeCompare(b.getNameAsString()) : a.isReadonly() ? 1 : -1) : []);
129
- return /* @__PURE__ */ jsx(Show, {
130
- when: reflection && properties.value.length > 0,
131
- fallback: /* @__PURE__ */ jsx(BaseInterfaceDeclaration, {
132
- ...props,
133
- name: interfaceName.value
134
- }),
135
- children: /* @__PURE__ */ jsxs(ReflectionClassContext.Provider, {
136
- value: { reflection },
137
- children: [/* @__PURE__ */ jsx(TSDocReflectionClass, {
138
- heading: doc,
139
- reflection
140
- }), /* @__PURE__ */ jsx(BaseInterfaceDeclaration, {
141
- export: true,
142
- name: interfaceName.value,
143
- ...rest,
144
- children: /* @__PURE__ */ jsx(For, {
145
- each: properties,
146
- doubleHardline: true,
147
- semicolon: true,
148
- children: (prop) => /* @__PURE__ */ jsx(InterfaceDeclarationProperty, { property: prop })
149
- })
150
- })]
151
- })
160
+ return createComponent(Show, {
161
+ get when() {
162
+ return reflection && properties.value.length > 0;
163
+ },
164
+ get fallback() {
165
+ return createComponent(BaseInterfaceDeclaration, mergeProps(props, { get name() {
166
+ return interfaceName.value;
167
+ } }));
168
+ },
169
+ get children() {
170
+ return createComponent(ReflectionClassContext.Provider, {
171
+ value: { reflection },
172
+ get children() {
173
+ return [createComponent(TSDocReflectionClass, {
174
+ heading: doc,
175
+ reflection
176
+ }), createComponent(BaseInterfaceDeclaration, mergeProps({
177
+ "export": true,
178
+ get name() {
179
+ return interfaceName.value;
180
+ }
181
+ }, rest, { get children() {
182
+ return createComponent(For, {
183
+ each: properties,
184
+ doubleHardline: true,
185
+ semicolon: true,
186
+ children: (prop) => createComponent(InterfaceDeclarationProperty, { property: prop })
187
+ });
188
+ } }))];
189
+ }
190
+ });
191
+ }
152
192
  });
153
193
  }
154
194
  /**
@@ -156,19 +196,29 @@ function InterfaceDeclaration(props) {
156
196
  */
157
197
  function InterfaceDeclarationProperty(props) {
158
198
  const [{ property }, rest] = splitProps(props, ["property"]);
159
- return /* @__PURE__ */ jsxs(ReflectionPropertyContext.Provider, {
199
+ return createComponent(ReflectionPropertyContext.Provider, {
160
200
  value: property,
161
- children: [/* @__PURE__ */ jsx(TSDocContextProperty, {}), /* @__PURE__ */ jsx(InterfaceMember, {
162
- name: property.getNameAsString(),
163
- readonly: property.isReadonly(),
164
- optional: property.isOptional(),
165
- nullish: property.isNullable(),
166
- type: stringifyType(property.getType()),
167
- ...rest
168
- })]
201
+ get children() {
202
+ return [createComponent(TSDocContextProperty, {}), createComponent(InterfaceMember, mergeProps({
203
+ get name() {
204
+ return property.getNameAsString();
205
+ },
206
+ get readonly() {
207
+ return property.isReadonly();
208
+ },
209
+ get optional() {
210
+ return property.isOptional();
211
+ },
212
+ get nullish() {
213
+ return property.isNullable();
214
+ },
215
+ get type() {
216
+ return stringifyType(property.getType());
217
+ }
218
+ }, rest))];
219
+ }
169
220
  });
170
221
  }
171
222
 
172
223
  //#endregion
173
- export { InterfaceDeclaration, InterfaceDeclarationProperty, InterfaceExpression, InterfaceMember };
174
- //# sourceMappingURL=interface-declaration.mjs.map
224
+ export { InterfaceDeclaration, InterfaceDeclarationProperty, InterfaceExpression, InterfaceMember };
@@ -2,8 +2,8 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
2
  const require_runtime = require('../../_virtual/_rolldown/runtime.cjs');
3
3
  const require_core_contexts_reflection = require('../../core/contexts/reflection.cjs');
4
4
  const require_typescript_components_tsdoc_reflection = require('./tsdoc-reflection.cjs');
5
- let _alloy_js_core = require("@alloy-js/core");
6
5
  let _alloy_js_core_jsx_runtime = require("@alloy-js/core/jsx-runtime");
6
+ let _alloy_js_core = require("@alloy-js/core");
7
7
  let _powerlines_deepkit_utilities = require("@powerlines/deepkit/utilities");
8
8
  let _stryke_string_format_camel_case = require("@stryke/string-format/camel-case");
9
9
  let _stryke_type_checks_is_undefined = require("@stryke/type-checks/is-undefined");
@@ -36,41 +36,67 @@ function ObjectDeclaration(props) {
36
36
  });
37
37
  if (!props.type) ValueTypeSymbolSlot.moveMembersTo(sym);
38
38
  const keyword = props.var ? "var" : props.let ? "let" : "const";
39
- const type = props.type ? /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsxs)(_alloy_js_typescript.TypeRefContext, { children: [": ", /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(TypeSymbolSlot, { children: props.type })] }) : void 0;
40
- return /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(_alloy_js_core.Show, {
41
- when: !!props.reflection.value,
42
- children: /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsxs)(require_core_contexts_reflection.ReflectionClassContext.Provider, {
43
- value: {
44
- reflection: props.reflection.value,
45
- override: {
46
- name: objectName.value,
47
- type: objectType.value,
48
- defaultValue: props.defaultValue?.value
39
+ const type = props.type ? (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_typescript.TypeRefContext, { get children() {
40
+ return [": ", (0, _alloy_js_core_jsx_runtime.createComponent)(TypeSymbolSlot, { get children() {
41
+ return props.type;
42
+ } })];
43
+ } }) : void 0;
44
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.Show, {
45
+ get when() {
46
+ return !!props.reflection.value;
47
+ },
48
+ get children() {
49
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(require_core_contexts_reflection.ReflectionClassContext.Provider, {
50
+ get value() {
51
+ return {
52
+ reflection: props.reflection.value,
53
+ override: {
54
+ name: objectName.value,
55
+ type: objectType.value,
56
+ defaultValue: props.defaultValue?.value
57
+ }
58
+ };
59
+ },
60
+ get children() {
61
+ return [(0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.Show, {
62
+ get when() {
63
+ return !!objectName.value && !!objectType.value;
64
+ },
65
+ get children() {
66
+ return [(0, _alloy_js_core_jsx_runtime.createComponent)(require_typescript_components_tsdoc_reflection.TSDocReflectionClass, { get reflection() {
67
+ return props.reflection.value;
68
+ } }), (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.Declaration, {
69
+ symbol: sym,
70
+ get children() {
71
+ return [
72
+ (0, _alloy_js_core_jsx_runtime.memo)(() => props.export ? "export " : ""),
73
+ (0, _alloy_js_core_jsx_runtime.memo)(() => props.default ? "default " : ""),
74
+ keyword,
75
+ " ",
76
+ (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.Name, {}),
77
+ type,
78
+ " =",
79
+ " ",
80
+ (0, _alloy_js_core_jsx_runtime.createComponent)(ValueTypeSymbolSlot, { get children() {
81
+ return props.initializer ?? props.children ?? (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_typescript.ObjectExpression, { get children() {
82
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.For, {
83
+ get each() {
84
+ return properties.value ?? [];
85
+ },
86
+ comma: true,
87
+ doubleHardline: true,
88
+ children: (prop) => (0, _alloy_js_core_jsx_runtime.createComponent)(ObjectDeclarationProperty, { property: prop })
89
+ });
90
+ } });
91
+ } })
92
+ ];
93
+ }
94
+ })];
95
+ }
96
+ }), (0, _alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {})];
49
97
  }
50
- },
51
- children: [/* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsxs)(_alloy_js_core.Show, {
52
- when: !!objectName.value && !!objectType.value,
53
- children: [/* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(require_typescript_components_tsdoc_reflection.TSDocReflectionClass, { reflection: props.reflection.value }), /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsxs)(_alloy_js_core.Declaration, {
54
- symbol: sym,
55
- children: [
56
- props.export ? "export " : "",
57
- props.default ? "default " : "",
58
- keyword,
59
- " ",
60
- /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(_alloy_js_core.Name, {}),
61
- type,
62
- " =",
63
- " ",
64
- /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(ValueTypeSymbolSlot, { children: props.initializer ?? props.children ?? /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(_alloy_js_typescript.ObjectExpression, { children: /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(_alloy_js_core.For, {
65
- each: properties.value ?? [],
66
- comma: true,
67
- doubleHardline: true,
68
- children: (prop) => /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(ObjectDeclarationProperty, { property: prop })
69
- }) }) })
70
- ]
71
- })]
72
- }), /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)("hbr", {})]
73
- })
98
+ });
99
+ }
74
100
  });
75
101
  }
76
102
  /**
@@ -78,16 +104,22 @@ function ObjectDeclaration(props) {
78
104
  */
79
105
  function ObjectDeclarationProperty(props) {
80
106
  const [{ property }] = (0, _alloy_js_core.splitProps)(props, ["property"]);
81
- return /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsxs)(require_core_contexts_reflection.ReflectionPropertyContext.Provider, {
107
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(require_core_contexts_reflection.ReflectionPropertyContext.Provider, {
82
108
  value: property,
83
- children: [
84
- /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(require_typescript_components_tsdoc_reflection.TSDocReflectionProperty, { reflection: property }),
85
- /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)(_alloy_js_typescript.ObjectProperty, {
86
- name: property.getNameAsString(),
87
- value: (0, _powerlines_deepkit_utilities.stringifyDefaultValue)(property)
88
- }),
89
- /* @__PURE__ */ (0, _alloy_js_core_jsx_runtime.jsx)("hbr", {})
90
- ]
109
+ get children() {
110
+ return [
111
+ (0, _alloy_js_core_jsx_runtime.createComponent)(require_typescript_components_tsdoc_reflection.TSDocReflectionProperty, { reflection: property }),
112
+ (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_typescript.ObjectProperty, {
113
+ get name() {
114
+ return property.getNameAsString();
115
+ },
116
+ get value() {
117
+ return (0, _powerlines_deepkit_utilities.stringifyDefaultValue)(property);
118
+ }
119
+ }),
120
+ (0, _alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {})
121
+ ];
122
+ }
91
123
  });
92
124
  }
93
125