@alloy-js/core 0.23.0-dev.12 → 0.23.0-dev.15

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 (521) hide show
  1. package/api-extractor.json +1 -8
  2. package/api-extractor.testing.json +19 -0
  3. package/dist/dev/src/binder.js +108 -1
  4. package/dist/dev/src/binder.js.map +1 -1
  5. package/dist/dev/src/components/Block.js +17 -5
  6. package/dist/dev/src/components/Block.js.map +1 -1
  7. package/dist/dev/src/components/List.js +1 -1
  8. package/dist/dev/src/components/List.js.map +1 -1
  9. package/dist/dev/src/components/MemberDeclaration.js +6 -6
  10. package/dist/dev/src/components/MemberName.js +7 -0
  11. package/dist/dev/src/components/MemberName.js.map +1 -1
  12. package/dist/dev/src/components/MemberScope.js +7 -2
  13. package/dist/dev/src/components/MemberScope.js.map +1 -1
  14. package/dist/dev/src/components/Output.js +4 -4
  15. package/dist/dev/src/components/Output.js.map +1 -1
  16. package/dist/dev/src/components/Scope.js +7 -1
  17. package/dist/dev/src/components/Scope.js.map +1 -1
  18. package/dist/dev/src/components/SourceFile.js +3 -3
  19. package/dist/dev/src/components/SourceFile.js.map +1 -1
  20. package/dist/dev/src/context/binder.js +5 -0
  21. package/dist/dev/src/context/binder.js.map +1 -1
  22. package/dist/dev/src/context/format-options.js +14 -1
  23. package/dist/dev/src/context/format-options.js.map +1 -1
  24. package/dist/dev/src/context/scope.js +5 -0
  25. package/dist/dev/src/context/scope.js.map +1 -1
  26. package/dist/dev/src/context/source-directory.js +9 -0
  27. package/dist/dev/src/context/source-directory.js.map +1 -1
  28. package/dist/dev/src/debug/cli.js +3 -2
  29. package/dist/dev/src/debug/cli.js.map +1 -1
  30. package/dist/dev/src/debug/source-map.browser.js +24 -0
  31. package/dist/dev/src/debug/source-map.browser.js.map +1 -0
  32. package/dist/dev/src/debug/trace.js +7 -6
  33. package/dist/dev/src/debug/trace.js.map +1 -1
  34. package/dist/dev/src/host/node-host.browser.js +21 -0
  35. package/dist/dev/src/host/node-host.browser.js.map +1 -0
  36. package/dist/dev/src/host/node-host.js +20 -0
  37. package/dist/dev/src/host/node-host.js.map +1 -0
  38. package/dist/dev/src/library-symbol-reference.js +54 -0
  39. package/dist/dev/src/library-symbol-reference.js.map +1 -1
  40. package/dist/dev/src/name-policy.js +27 -0
  41. package/dist/dev/src/name-policy.js.map +1 -1
  42. package/dist/dev/src/reactivity.js +16 -0
  43. package/dist/dev/src/reactivity.js.map +1 -1
  44. package/dist/dev/src/render-stack.js +4 -3
  45. package/dist/dev/src/render-stack.js.map +1 -1
  46. package/dist/dev/src/render.js.map +1 -1
  47. package/dist/dev/src/symbols/output-scope.js +34 -1
  48. package/dist/dev/src/symbols/output-scope.js.map +1 -1
  49. package/dist/dev/src/symbols/output-space.js +15 -0
  50. package/dist/dev/src/symbols/output-space.js.map +1 -1
  51. package/dist/dev/src/symbols/output-symbol.js +81 -11
  52. package/dist/dev/src/symbols/output-symbol.js.map +1 -1
  53. package/dist/dev/src/symbols/symbol-slot.js +7 -0
  54. package/dist/dev/src/symbols/symbol-slot.js.map +1 -1
  55. package/dist/dev/src/symbols/symbol-slot.test.js +27 -2
  56. package/dist/dev/src/symbols/symbol-slot.test.js.map +1 -1
  57. package/dist/dev/src/write-output.js +6 -5
  58. package/dist/dev/src/write-output.js.map +1 -1
  59. package/dist/dev/test/browser-build.test.js +67 -68
  60. package/dist/dev/test/browser-build.test.js.map +1 -1
  61. package/dist/dev/testing/create-test-wrapper.js +59 -5
  62. package/dist/dev/testing/create-test-wrapper.js.map +1 -1
  63. package/dist/dev/testing/extend-expect.js +20 -0
  64. package/dist/dev/testing/extend-expect.js.map +1 -1
  65. package/dist/dev/testing/index.js +1 -1
  66. package/dist/dev/testing/index.js.map +1 -1
  67. package/dist/dev/testing/render.js +11 -0
  68. package/dist/dev/testing/render.js.map +1 -1
  69. package/dist/src/binder.d.ts +107 -3
  70. package/dist/src/binder.d.ts.map +1 -1
  71. package/dist/src/binder.js +108 -1
  72. package/dist/src/binder.js.map +1 -1
  73. package/dist/src/components/Block.d.ts +12 -0
  74. package/dist/src/components/Block.d.ts.map +1 -1
  75. package/dist/src/components/Block.js +12 -0
  76. package/dist/src/components/Block.js.map +1 -1
  77. package/dist/src/components/List.d.ts +11 -1
  78. package/dist/src/components/List.d.ts.map +1 -1
  79. package/dist/src/components/List.js.map +1 -1
  80. package/dist/src/components/MemberDeclaration.d.ts +6 -6
  81. package/dist/src/components/MemberDeclaration.js +6 -6
  82. package/dist/src/components/MemberName.d.ts +6 -0
  83. package/dist/src/components/MemberName.d.ts.map +1 -1
  84. package/dist/src/components/MemberName.js +7 -0
  85. package/dist/src/components/MemberName.js.map +1 -1
  86. package/dist/src/components/MemberScope.d.ts +5 -0
  87. package/dist/src/components/MemberScope.d.ts.map +1 -1
  88. package/dist/src/components/MemberScope.js +5 -0
  89. package/dist/src/components/MemberScope.js.map +1 -1
  90. package/dist/src/components/Output.d.ts +4 -2
  91. package/dist/src/components/Output.d.ts.map +1 -1
  92. package/dist/src/components/Output.js.map +1 -1
  93. package/dist/src/components/Scope.d.ts +6 -0
  94. package/dist/src/components/Scope.d.ts.map +1 -1
  95. package/dist/src/components/Scope.js +6 -0
  96. package/dist/src/components/Scope.js.map +1 -1
  97. package/dist/src/components/SourceFile.d.ts +22 -2
  98. package/dist/src/components/SourceFile.d.ts.map +1 -1
  99. package/dist/src/components/SourceFile.js.map +1 -1
  100. package/dist/src/context/binder.d.ts +4 -0
  101. package/dist/src/context/binder.d.ts.map +1 -1
  102. package/dist/src/context/binder.js +5 -0
  103. package/dist/src/context/binder.js.map +1 -1
  104. package/dist/src/context/format-options.d.ts +14 -1
  105. package/dist/src/context/format-options.d.ts.map +1 -1
  106. package/dist/src/context/format-options.js +14 -1
  107. package/dist/src/context/format-options.js.map +1 -1
  108. package/dist/src/context/scope.d.ts +4 -0
  109. package/dist/src/context/scope.d.ts.map +1 -1
  110. package/dist/src/context/scope.js +5 -0
  111. package/dist/src/context/scope.js.map +1 -1
  112. package/dist/src/context/source-directory.d.ts +9 -0
  113. package/dist/src/context/source-directory.d.ts.map +1 -1
  114. package/dist/src/context/source-directory.js +9 -0
  115. package/dist/src/context/source-directory.js.map +1 -1
  116. package/dist/src/debug/cli.d.ts.map +1 -1
  117. package/dist/src/debug/cli.js +3 -2
  118. package/dist/src/debug/cli.js.map +1 -1
  119. package/dist/src/debug/source-map.browser.d.ts +16 -0
  120. package/dist/src/debug/source-map.browser.d.ts.map +1 -0
  121. package/dist/src/debug/source-map.browser.js +24 -0
  122. package/dist/src/debug/source-map.browser.js.map +1 -0
  123. package/dist/src/debug/trace.d.ts.map +1 -1
  124. package/dist/src/debug/trace.js +7 -6
  125. package/dist/src/debug/trace.js.map +1 -1
  126. package/dist/src/host/node-host.browser.d.ts +11 -0
  127. package/dist/src/host/node-host.browser.d.ts.map +1 -0
  128. package/dist/src/host/node-host.browser.js +21 -0
  129. package/dist/src/host/node-host.browser.js.map +1 -0
  130. package/dist/src/host/node-host.d.ts +11 -0
  131. package/dist/src/host/node-host.d.ts.map +1 -0
  132. package/dist/src/host/node-host.js +20 -0
  133. package/dist/src/host/node-host.js.map +1 -0
  134. package/dist/src/library-symbol-reference.d.ts +52 -0
  135. package/dist/src/library-symbol-reference.d.ts.map +1 -1
  136. package/dist/src/library-symbol-reference.js +54 -0
  137. package/dist/src/library-symbol-reference.js.map +1 -1
  138. package/dist/src/name-policy.d.ts +30 -3
  139. package/dist/src/name-policy.d.ts.map +1 -1
  140. package/dist/src/name-policy.js +27 -0
  141. package/dist/src/name-policy.js.map +1 -1
  142. package/dist/src/reactivity.d.ts +15 -0
  143. package/dist/src/reactivity.d.ts.map +1 -1
  144. package/dist/src/reactivity.js +16 -0
  145. package/dist/src/reactivity.js.map +1 -1
  146. package/dist/src/render-stack.d.ts.map +1 -1
  147. package/dist/src/render-stack.js +4 -3
  148. package/dist/src/render-stack.js.map +1 -1
  149. package/dist/src/render.d.ts +2 -0
  150. package/dist/src/render.d.ts.map +1 -1
  151. package/dist/src/render.js.map +1 -1
  152. package/dist/src/symbols/output-scope.d.ts +33 -1
  153. package/dist/src/symbols/output-scope.d.ts.map +1 -1
  154. package/dist/src/symbols/output-scope.js +34 -1
  155. package/dist/src/symbols/output-scope.js.map +1 -1
  156. package/dist/src/symbols/output-space.d.ts +12 -0
  157. package/dist/src/symbols/output-space.d.ts.map +1 -1
  158. package/dist/src/symbols/output-space.js +15 -0
  159. package/dist/src/symbols/output-space.js.map +1 -1
  160. package/dist/src/symbols/output-symbol.d.ts +93 -12
  161. package/dist/src/symbols/output-symbol.d.ts.map +1 -1
  162. package/dist/src/symbols/output-symbol.js +81 -11
  163. package/dist/src/symbols/output-symbol.js.map +1 -1
  164. package/dist/src/symbols/symbol-slot.d.ts.map +1 -1
  165. package/dist/src/symbols/symbol-slot.js +7 -0
  166. package/dist/src/symbols/symbol-slot.js.map +1 -1
  167. package/dist/src/symbols/symbol-slot.test.js +18 -1
  168. package/dist/src/symbols/symbol-slot.test.js.map +1 -1
  169. package/dist/src/write-output.d.ts.map +1 -1
  170. package/dist/src/write-output.js +6 -5
  171. package/dist/src/write-output.js.map +1 -1
  172. package/dist/test/browser-build.test.js +67 -68
  173. package/dist/test/browser-build.test.js.map +1 -1
  174. package/dist/testing/create-test-wrapper.d.ts +75 -2
  175. package/dist/testing/create-test-wrapper.d.ts.map +1 -1
  176. package/dist/testing/create-test-wrapper.js +55 -1
  177. package/dist/testing/create-test-wrapper.js.map +1 -1
  178. package/dist/testing/extend-expect.d.ts +26 -0
  179. package/dist/testing/extend-expect.d.ts.map +1 -1
  180. package/dist/testing/extend-expect.js +20 -0
  181. package/dist/testing/extend-expect.js.map +1 -1
  182. package/dist/testing/index.d.ts +1 -1
  183. package/dist/testing/index.d.ts.map +1 -1
  184. package/dist/testing/index.js +1 -1
  185. package/dist/testing/index.js.map +1 -1
  186. package/dist/testing/render.d.ts +9 -0
  187. package/dist/testing/render.d.ts.map +1 -1
  188. package/dist/testing/render.js +11 -0
  189. package/dist/testing/render.js.map +1 -1
  190. package/dist/tsconfig.tsbuildinfo +1 -1
  191. package/docs/api/components/AppendRegion.md +83 -0
  192. package/docs/api/components/Block.md +49 -0
  193. package/docs/api/components/CopyFile.md +26 -0
  194. package/docs/api/components/Declaration.md +85 -0
  195. package/docs/api/components/For.md +91 -0
  196. package/docs/api/components/Indent.md +40 -0
  197. package/docs/api/components/List.md +68 -0
  198. package/docs/api/components/MemberDeclaration.md +89 -0
  199. package/docs/api/components/MemberName.md +21 -0
  200. package/docs/api/components/MemberScope.md +81 -0
  201. package/docs/api/components/Name.md +19 -0
  202. package/docs/api/components/Output.md +62 -0
  203. package/docs/api/components/Prose.md +29 -0
  204. package/docs/api/components/ReferenceOrContent.md +28 -0
  205. package/docs/api/components/Scope.md +83 -0
  206. package/docs/api/components/Show.md +32 -0
  207. package/docs/api/components/SourceDirectory.md +28 -0
  208. package/docs/api/components/SourceFile.md +60 -0
  209. package/docs/api/components/StatementList.md +29 -0
  210. package/docs/api/components/Switch.md +42 -0
  211. package/docs/api/components/TemplateFile.md +71 -0
  212. package/docs/api/components/TemplateVariable.md +57 -0
  213. package/docs/api/components/UpdateFile.md +56 -0
  214. package/docs/api/components/Wrap.md +40 -0
  215. package/docs/api/components/createAccessExpression.md +55 -0
  216. package/docs/api/components/index.md +27 -0
  217. package/docs/api/contexts/Assignment-context.md +43 -0
  218. package/docs/api/contexts/Binder-context.md +22 -0
  219. package/docs/api/contexts/Declaration-context.md +15 -0
  220. package/docs/api/contexts/Member-context.md +17 -0
  221. package/docs/api/contexts/MemberDeclaration-context.md +24 -0
  222. package/docs/api/contexts/NamePolicy-context.md +18 -0
  223. package/docs/api/contexts/Scope-context.md +20 -0
  224. package/docs/api/contexts/SourceDirectory-context.md +26 -0
  225. package/docs/api/contexts/SourceFile-context.md +19 -0
  226. package/docs/api/contexts/index.md +11 -0
  227. package/docs/api/functions/attachDiagnosticsCollector.md +18 -0
  228. package/docs/api/functions/baseListPropsToMapJoinArgs.md +20 -0
  229. package/docs/api/functions/children.md +27 -0
  230. package/docs/api/functions/childrenArray.md +25 -0
  231. package/docs/api/functions/code.md +25 -0
  232. package/docs/api/functions/computed.md +18 -0
  233. package/docs/api/functions/createComponent.md +20 -0
  234. package/docs/api/functions/createContentSlot.md +33 -0
  235. package/docs/api/functions/createContext.md +19 -0
  236. package/docs/api/functions/createCustomContext.md +18 -0
  237. package/docs/api/functions/createDeclarationTap.md +20 -0
  238. package/docs/api/functions/createFileResource.md +35 -0
  239. package/docs/api/functions/createFormatOptionsContextFor.md +28 -0
  240. package/docs/api/functions/createIntrinsic.md +19 -0
  241. package/docs/api/functions/createMemberTap.md +20 -0
  242. package/docs/api/functions/createNamePolicy.md +37 -0
  243. package/docs/api/functions/createNamedContext.md +19 -0
  244. package/docs/api/functions/createOutputBinder.md +24 -0
  245. package/docs/api/functions/createRenderTreeHook.md +19 -0
  246. package/docs/api/functions/createResource.md +77 -0
  247. package/docs/api/functions/createScope.md +35 -0
  248. package/docs/api/functions/createScopeTap.md +20 -0
  249. package/docs/api/functions/createSourceFileTap.md +20 -0
  250. package/docs/api/functions/createSymbol.md +25 -0
  251. package/docs/api/functions/createSymbolSlot.md +19 -0
  252. package/docs/api/functions/createTap.md +55 -0
  253. package/docs/api/functions/decl.md +20 -0
  254. package/docs/api/functions/defaultProps.md +21 -0
  255. package/docs/api/functions/effect.md +26 -0
  256. package/docs/api/functions/emitDiagnostic.md +18 -0
  257. package/docs/api/functions/emitSymbol.md +18 -0
  258. package/docs/api/functions/ensureIsEmpty.md +20 -0
  259. package/docs/api/functions/findCurrentEffectId.md +19 -0
  260. package/docs/api/functions/findKeyedChild.md +19 -0
  261. package/docs/api/functions/findKeyedChildren.md +19 -0
  262. package/docs/api/functions/findUnkeyedChildren.md +18 -0
  263. package/docs/api/functions/formatReactivePropertyLabel.md +21 -0
  264. package/docs/api/functions/getAssignmentSymbol.md +19 -0
  265. package/docs/api/functions/getContext.md +17 -0
  266. package/docs/api/functions/getContextForRenderNode.md +18 -0
  267. package/docs/api/functions/getDiagnosticsForTree.md +18 -0
  268. package/docs/api/functions/getEffectDebugId.md +18 -0
  269. package/docs/api/functions/getElementCache.md +17 -0
  270. package/docs/api/functions/getReactiveCreationLocation.md +18 -0
  271. package/docs/api/functions/getSymbolCreator.md +18 -0
  272. package/docs/api/functions/getSymbolCreatorSymbol.md +17 -0
  273. package/docs/api/functions/index.md +105 -0
  274. package/docs/api/functions/inspectRefkey.md +18 -0
  275. package/docs/api/functions/instantiateTakenMembersTo.md +20 -0
  276. package/docs/api/functions/isComponentCreator.md +19 -0
  277. package/docs/api/functions/isCustomContext.md +18 -0
  278. package/docs/api/functions/isIntrinsicElement.md +18 -0
  279. package/docs/api/functions/isKeyedChild.md +18 -0
  280. package/docs/api/functions/isLibrarySymbolReference.md +18 -0
  281. package/docs/api/functions/isMemberRefkey.md +18 -0
  282. package/docs/api/functions/isNamekey.md +18 -0
  283. package/docs/api/functions/isPrintHook.md +18 -0
  284. package/docs/api/functions/isRefkey.md +18 -0
  285. package/docs/api/functions/isRefkeyable.md +18 -0
  286. package/docs/api/functions/isRenderableObject.md +20 -0
  287. package/docs/api/functions/isSymbolRefkey.md +18 -0
  288. package/docs/api/functions/join.md +33 -0
  289. package/docs/api/functions/mapJoin.md +106 -0
  290. package/docs/api/functions/memberRefkey.md +27 -0
  291. package/docs/api/functions/memo.md +29 -0
  292. package/docs/api/functions/mergeProps.md +64 -0
  293. package/docs/api/functions/moveTakenMembersTo.md +18 -0
  294. package/docs/api/functions/namekey.md +41 -0
  295. package/docs/api/functions/nextReactiveId.md +19 -0
  296. package/docs/api/functions/notifyContentState.md +17 -0
  297. package/docs/api/functions/onCleanup.md +26 -0
  298. package/docs/api/functions/printTree.md +31 -0
  299. package/docs/api/functions/reactivePropertyRefId.md +21 -0
  300. package/docs/api/functions/ref.md +21 -0
  301. package/docs/api/functions/refId.md +18 -0
  302. package/docs/api/functions/refkey.md +24 -0
  303. package/docs/api/functions/render.md +31 -0
  304. package/docs/api/functions/renderAsync.md +31 -0
  305. package/docs/api/functions/renderTree.md +18 -0
  306. package/docs/api/functions/reportDiagnostics.md +18 -0
  307. package/docs/api/functions/resetRefIdCounter.md +17 -0
  308. package/docs/api/functions/resolve.md +31 -0
  309. package/docs/api/functions/root.md +25 -0
  310. package/docs/api/functions/shallowReactive.md +18 -0
  311. package/docs/api/functions/shallowRef.md +21 -0
  312. package/docs/api/functions/sourceFilesForTree.md +31 -0
  313. package/docs/api/functions/splitProps.md +19 -0
  314. package/docs/api/functions/stc.md +18 -0
  315. package/docs/api/functions/sti.md +18 -0
  316. package/docs/api/functions/symbolForRefkey.md +24 -0
  317. package/docs/api/functions/taggedComponent.md +19 -0
  318. package/docs/api/functions/takeSymbols.md +18 -0
  319. package/docs/api/functions/text.md +19 -0
  320. package/docs/api/functions/toRef.md +20 -0
  321. package/docs/api/functions/toRefkey.md +18 -0
  322. package/docs/api/functions/toRefs.md +20 -0
  323. package/docs/api/functions/traverseOutput.md +21 -0
  324. package/docs/api/functions/unresolvedRefkey.md +18 -0
  325. package/docs/api/functions/untrack.md +18 -0
  326. package/docs/api/functions/useContext.md +18 -0
  327. package/docs/api/functions/useFormatOptions.md +18 -0
  328. package/docs/api/functions/useMemberContext.md +17 -0
  329. package/docs/api/functions/useMemberScope.md +17 -0
  330. package/docs/api/functions/writeOutput.md +21 -0
  331. package/docs/api/index.md +9 -0
  332. package/docs/api/testing/functions/createTestWrapper.md +70 -0
  333. package/docs/api/testing/functions/d.md +21 -0
  334. package/docs/api/testing/functions/dedent.md +18 -0
  335. package/docs/api/testing/functions/index.md +6 -0
  336. package/docs/api/testing/functions/renderToString.md +20 -0
  337. package/docs/api/testing/index.md +4 -0
  338. package/docs/api/testing/types/TestWrapper.md +10 -0
  339. package/docs/api/testing/types/ToRenderToOptions.md +24 -0
  340. package/docs/api/testing/types/index.md +4 -0
  341. package/docs/api/types/AlignIntrinsicElement.md +5 -0
  342. package/docs/api/types/AppendRegionProps.md +5 -0
  343. package/docs/api/types/BaseListProps.md +21 -0
  344. package/docs/api/types/BasePartProps.md +10 -0
  345. package/docs/api/types/BasicScope.md +15 -0
  346. package/docs/api/types/BasicSymbol.md +18 -0
  347. package/docs/api/types/Binder.md +18 -0
  348. package/docs/api/types/BinderOptions.md +7 -0
  349. package/docs/api/types/BrIntrinsicElement.md +5 -0
  350. package/docs/api/types/BreakParentIntrinsicElement.md +5 -0
  351. package/docs/api/types/Child.md +5 -0
  352. package/docs/api/types/Children.md +5 -0
  353. package/docs/api/types/ChildrenOptions.md +7 -0
  354. package/docs/api/types/CommonFormatOptions.md +8 -0
  355. package/docs/api/types/Component.md +8 -0
  356. package/docs/api/types/ComponentContext.md +11 -0
  357. package/docs/api/types/ComponentCreator.md +11 -0
  358. package/docs/api/types/ComponentDefinition.md +7 -0
  359. package/docs/api/types/ContentOutputFile.md +10 -0
  360. package/docs/api/types/ContentSlot.md +12 -0
  361. package/docs/api/types/Context.md +19 -0
  362. package/docs/api/types/ContextProviderProps.md +8 -0
  363. package/docs/api/types/CopyFileContext.md +8 -0
  364. package/docs/api/types/CopyOutputFile.md +9 -0
  365. package/docs/api/types/CustomContext.md +10 -0
  366. package/docs/api/types/CustomContextChildrenCallback.md +5 -0
  367. package/docs/api/types/DeclarationProps.md +5 -0
  368. package/docs/api/types/DedentIntrinsicElement.md +5 -0
  369. package/docs/api/types/DedentToRootIntrinsicElement.md +5 -0
  370. package/docs/api/types/Diagnostic.md +11 -0
  371. package/docs/api/types/DiagnosticHandle.md +7 -0
  372. package/docs/api/types/DiagnosticInput.md +10 -0
  373. package/docs/api/types/DiagnosticSeverity.md +5 -0
  374. package/docs/api/types/DiagnosticStackEntry.md +9 -0
  375. package/docs/api/types/DiagnosticsCollector.md +8 -0
  376. package/docs/api/types/Disposable_2.md +7 -0
  377. package/docs/api/types/EffectDebugOptions.md +8 -0
  378. package/docs/api/types/EffectOptions.md +7 -0
  379. package/docs/api/types/ElementCache.md +5 -0
  380. package/docs/api/types/ElementCacheKey.md +5 -0
  381. package/docs/api/types/FillIntrinsicElement.md +5 -0
  382. package/docs/api/types/ForCallbackArgs.md +5 -0
  383. package/docs/api/types/ForSupportedCollections.md +5 -0
  384. package/docs/api/types/GroupIntrinsicElement.md +5 -0
  385. package/docs/api/types/HardlineIntrinsicElement.md +5 -0
  386. package/docs/api/types/HbrIntrinsicElement.md +5 -0
  387. package/docs/api/types/IfBreakIntrinsicElement.md +5 -0
  388. package/docs/api/types/IndentIfBreakIntrinsicElement.md +5 -0
  389. package/docs/api/types/IndentIntrinsicElement.md +5 -0
  390. package/docs/api/types/IntrinsicElement.md +5 -0
  391. package/docs/api/types/IntrinsicElementBase.md +9 -0
  392. package/docs/api/types/IntrinsicElements.md +26 -0
  393. package/docs/api/types/JoinOptions.md +9 -0
  394. package/docs/api/types/LbrIntrinsicElement.md +5 -0
  395. package/docs/api/types/LibrarySymbolReference.md +13 -0
  396. package/docs/api/types/LineIntrinsicElement.md +5 -0
  397. package/docs/api/types/LineSuffixBoundaryIntrinsicElement.md +5 -0
  398. package/docs/api/types/LineSuffixIntrinsicElement.md +5 -0
  399. package/docs/api/types/LiterallineIntrinsicElement.md +5 -0
  400. package/docs/api/types/MakeChildrenOptional.md +7 -0
  401. package/docs/api/types/MarkAsRootIntrinsicElement.md +5 -0
  402. package/docs/api/types/MatchProps.md +9 -0
  403. package/docs/api/types/MemberDeclarationProps.md +5 -0
  404. package/docs/api/types/MemberDescriptor.md +10 -0
  405. package/docs/api/types/MemberRefkey.md +10 -0
  406. package/docs/api/types/MemberResolutionContext.md +10 -0
  407. package/docs/api/types/MemberResolver.md +32 -0
  408. package/docs/api/types/MemberScopeProps.md +5 -0
  409. package/docs/api/types/Metadata.md +5 -0
  410. package/docs/api/types/NameConflictResolver.md +27 -0
  411. package/docs/api/types/NamePolicy.md +8 -0
  412. package/docs/api/types/NamePolicyGetter.md +9 -0
  413. package/docs/api/types/Namekey.md +10 -0
  414. package/docs/api/types/NamekeyOptions.md +8 -0
  415. package/docs/api/types/OnReactiveSetAddCallback.md +5 -0
  416. package/docs/api/types/OnReactiveSetDeleteCallback.md +5 -0
  417. package/docs/api/types/OutputDeclarationSpace.md +13 -0
  418. package/docs/api/types/OutputDirectory.md +59 -0
  419. package/docs/api/types/OutputFile.md +5 -0
  420. package/docs/api/types/OutputFileBase.md +8 -0
  421. package/docs/api/types/OutputMemberSpace.md +13 -0
  422. package/docs/api/types/OutputScope.md +33 -0
  423. package/docs/api/types/OutputScopeOptions.md +9 -0
  424. package/docs/api/types/OutputSpace.md +7 -0
  425. package/docs/api/types/OutputSymbol.md +76 -0
  426. package/docs/api/types/OutputSymbolOptions.md +16 -0
  427. package/docs/api/types/OutputVisitor.md +10 -0
  428. package/docs/api/types/PrintHook.md +10 -0
  429. package/docs/api/types/PrintTreeOptions.md +11 -0
  430. package/docs/api/types/Props.md +5 -0
  431. package/docs/api/types/ReactiveUnionSet.md +20 -0
  432. package/docs/api/types/ReactiveUnionSetOptions.md +8 -0
  433. package/docs/api/types/Refkey.md +5 -0
  434. package/docs/api/types/Refkeyable.md +5 -0
  435. package/docs/api/types/RefkeyableObject.md +7 -0
  436. package/docs/api/types/RenderableObject.md +9 -0
  437. package/docs/api/types/RenderedTextTree.md +5 -0
  438. package/docs/api/types/ResolutionResult.md +39 -0
  439. package/docs/api/types/ResolveDeclarationByKeyOptions.md +7 -0
  440. package/docs/api/types/Resource.md +11 -0
  441. package/docs/api/types/RootOptions.md +7 -0
  442. package/docs/api/types/SbrIntrinsicElement.md +5 -0
  443. package/docs/api/types/ScopeProps.md +5 -0
  444. package/docs/api/types/SoftlineIntrinsicElement.md +5 -0
  445. package/docs/api/types/SourceLocation.md +9 -0
  446. package/docs/api/types/SplitProps.md +12 -0
  447. package/docs/api/types/StcComponentCreator.md +9 -0
  448. package/docs/api/types/StcSignature.md +5 -0
  449. package/docs/api/types/StiComponentCreator.md +9 -0
  450. package/docs/api/types/StiSignature.md +7 -0
  451. package/docs/api/types/SymbolCreator.md +15 -0
  452. package/docs/api/types/SymbolRefkey.md +9 -0
  453. package/docs/api/types/SymbolSlot.md +12 -0
  454. package/docs/api/types/SymbolTable.md +15 -0
  455. package/docs/api/types/TakeSymbolCallback.md +7 -0
  456. package/docs/api/types/TakeSymbolsCallback.md +7 -0
  457. package/docs/api/types/Tap.md +11 -0
  458. package/docs/api/types/TapHandler.md +9 -0
  459. package/docs/api/types/Tapper.md +9 -0
  460. package/docs/api/types/TemplateVariableProps.md +5 -0
  461. package/docs/api/types/index.md +122 -0
  462. package/docs/api/variables/FormatOptions.md +5 -0
  463. package/docs/api/variables/Match.md +7 -0
  464. package/docs/api/variables/REFKEYABLE.md +5 -0
  465. package/docs/api/variables/RENDERABLE.md +5 -0
  466. package/docs/api/variables/TO_SYMBOL.md +39 -0
  467. package/docs/api/variables/contextsByKey.md +5 -0
  468. package/docs/api/variables/index.md +11 -0
  469. package/docs/api/variables/intrinsicElementKey.md +5 -0
  470. package/docs/api/variables/matchTag.md +5 -0
  471. package/docs/api/variables/printHookTag.md +7 -0
  472. package/docs/components.md +97 -0
  473. package/docs/context.md +67 -0
  474. package/docs/control-flow.md +5 -0
  475. package/docs/debugging.md +105 -0
  476. package/docs/formatting.md +99 -0
  477. package/docs/guides/language-package-guide.md +593 -0
  478. package/docs/guides/references-and-refkeys.md +210 -0
  479. package/docs/guides/style-guide.md +244 -0
  480. package/docs/index.md +22 -0
  481. package/docs/reactivity.md +68 -0
  482. package/docs/rendering.md +41 -0
  483. package/docs/symbols-and-scopes.md +180 -0
  484. package/package.json +8 -4
  485. package/src/binder.ts +107 -3
  486. package/src/components/Block.tsx +12 -0
  487. package/src/components/List.tsx +11 -1
  488. package/src/components/MemberDeclaration.tsx +6 -6
  489. package/src/components/MemberName.tsx +6 -0
  490. package/src/components/MemberScope.tsx +5 -0
  491. package/src/components/Output.tsx +4 -1
  492. package/src/components/Scope.tsx +6 -0
  493. package/src/components/SourceFile.tsx +22 -2
  494. package/src/context/binder.ts +4 -0
  495. package/src/context/format-options.ts +14 -1
  496. package/src/context/scope.ts +4 -0
  497. package/src/context/source-directory.ts +9 -0
  498. package/src/debug/cli.ts +3 -2
  499. package/src/debug/source-map.browser.ts +30 -0
  500. package/src/debug/trace.ts +7 -6
  501. package/src/host/node-host.browser.ts +23 -0
  502. package/src/host/node-host.ts +22 -0
  503. package/src/library-symbol-reference.ts +52 -0
  504. package/src/name-policy.ts +30 -3
  505. package/src/reactivity.ts +15 -0
  506. package/src/render-stack.ts +4 -3
  507. package/src/render.ts +2 -0
  508. package/src/symbols/output-scope.ts +33 -1
  509. package/src/symbols/output-space.ts +13 -0
  510. package/src/symbols/output-symbol.ts +93 -12
  511. package/src/symbols/symbol-slot.test.tsx +28 -1
  512. package/src/symbols/symbol-slot.tsx +8 -0
  513. package/src/write-output.ts +6 -5
  514. package/temp/api-testing.json +673 -0
  515. package/temp/api.json +48 -47
  516. package/test/browser-build.test.ts +71 -78
  517. package/testing/create-test-wrapper.tsx +81 -2
  518. package/testing/extend-expect.ts +22 -1
  519. package/testing/index.ts +1 -1
  520. package/testing/render.ts +9 -0
  521. package/testing/vitest.d.ts +3 -8
@@ -0,0 +1,27 @@
1
+ # memberRefkey
2
+
3
+ Create a refkey for an instantiation of a symbol.
4
+
5
+ ```ts
6
+ import { memberRefkey } from "@alloy-js/core";
7
+
8
+
9
+ function memberRefkey(base: Refkeyable, ...members: [Refkeyable | string, ...(Refkeyable | string)[]]): MemberRefkey;
10
+ ```
11
+
12
+ ## Parameters
13
+
14
+ | | | |
15
+ | ------- | --------------------------------------------------- | - |
16
+ | base | Refkeyable | |
17
+ | members | \[Refkeyable \| string, …(Refkeyable \| string)\[]] | |
18
+
19
+ ## Returns
20
+
21
+ [MemberRefkey](../../types/memberrefkey/)
22
+
23
+ ## Remarks
24
+
25
+ Refkeys for instantiated and copied members are a composite refkey of the owner’s refkey and the member’s refkey. So for example, given a refkey for an instantiation of a class `rk1`, and a refkey for the instance member of that class `rk2`, the refkey for the instantiated static member is `refkey(rk1, rk2)`. This function will return the same refkey given those same parameters.
26
+
27
+ When a static member symbol `rk3` is owned by another static or instance member symbol (i.e. the outer symbol is itself a member container), the refkey of the instaniated static member is still just the composite of the instantiated variable refkey and the refkey of the inner member `refkey(rk1, rk3)`.
@@ -0,0 +1,29 @@
1
+ # memo
2
+
3
+ Returns a getter caching the result of `fn`. Re-evaluates when reactive dependencies change. See the [Reactivity docs](../../reactivity.md) for details.
4
+
5
+ ```ts
6
+ import { memo } from "@alloy-js/core";
7
+
8
+
9
+ function memo<T>(fn: () => T, equal?: boolean, name?: string): () => T;
10
+ ```
11
+
12
+ ## Parameters
13
+
14
+ | | | |
15
+ | ----- | ---------------- | - |
16
+ | fn | () => T | |
17
+ | equal | optional boolean | |
18
+ | name | optional string | |
19
+
20
+ ## Returns
21
+
22
+ () => T A zero-argument getter returning the cached value.
23
+
24
+ ## Example
25
+
26
+ ```ts
27
+ const fullName = memo(() => `${first.value} ${last.value}`);
28
+ fullName(); // cached; re-evaluates when first or last changes
29
+ ```
@@ -0,0 +1,64 @@
1
+ # mergeProps
2
+
3
+ ## Overload 1
4
+
5
+ ```ts
6
+ import { mergeProps } from "@alloy-js/core";
7
+
8
+
9
+ function mergeProps<T, U>(source: T, source1: U): T & U;
10
+ ```
11
+
12
+ ### Parameters
13
+
14
+ | | | |
15
+ | ------- | - | - |
16
+ | source | T | |
17
+ | source1 | U | |
18
+
19
+ ### Returns
20
+
21
+ T & U
22
+
23
+ ## Overload 2
24
+
25
+ ```ts
26
+ import { mergeProps } from "@alloy-js/core";
27
+
28
+
29
+ function mergeProps<T, U, V>(source: T, source1: U, source2: V): T & U & V;
30
+ ```
31
+
32
+ ### Parameters
33
+
34
+ | | | |
35
+ | ------- | - | - |
36
+ | source | T | |
37
+ | source1 | U | |
38
+ | source2 | V | |
39
+
40
+ ### Returns
41
+
42
+ T & U & V
43
+
44
+ ## Overload 3
45
+
46
+ ```ts
47
+ import { mergeProps } from "@alloy-js/core";
48
+
49
+
50
+ function mergeProps<T, U, V, W>(source: T, source1: U, source2: V, source3: W): T & U & V & W;
51
+ ```
52
+
53
+ ### Parameters
54
+
55
+ | | | |
56
+ | ------- | - | - |
57
+ | source | T | |
58
+ | source1 | U | |
59
+ | source2 | V | |
60
+ | source3 | W | |
61
+
62
+ ### Returns
63
+
64
+ T & U & V & W
@@ -0,0 +1,18 @@
1
+ # moveTakenMembersTo
2
+
3
+ ```ts
4
+ import { moveTakenMembersTo } from "@alloy-js/core";
5
+
6
+
7
+ function moveTakenMembersTo(baseSymbol: OutputSymbol): void;
8
+ ```
9
+
10
+ ## Parameters
11
+
12
+ | | | |
13
+ | ---------- | ------------ | - |
14
+ | baseSymbol | OutputSymbol | |
15
+
16
+ ## Returns
17
+
18
+ void
@@ -0,0 +1,41 @@
1
+ # namekey
2
+
3
+ Create a namekey with the given name. The namekey is a unique refkey that represents a single symbol with the given name and the provided naming-related options.
4
+
5
+ ```ts
6
+ import { namekey } from "@alloy-js/core";
7
+
8
+
9
+ function namekey(name: string, options?: NamekeyOptions): Namekey;
10
+ ```
11
+
12
+ ## Parameters
13
+
14
+ | | | |
15
+ | ------- | ----------------------- | - |
16
+ | name | string | |
17
+ | options | optional NamekeyOptions | |
18
+
19
+ ## Options
20
+
21
+ | | | |
22
+ | ------------------ | ---------------- | - |
23
+ | ignoreNameConflict | optional boolean | |
24
+ | ignoreNamePolicy | optional boolean | |
25
+
26
+ ## Returns
27
+
28
+ [Namekey](../../types/namekey/)
29
+
30
+ ## Example
31
+
32
+ ```tsx
33
+ const myClass = namekey("MyClass");
34
+
35
+ return <>
36
+ <ClassDeclaration name={myClass} />
37
+ {myClass}
38
+ </>
39
+ ```
40
+
41
+ Renders a class and a reference to that class.
@@ -0,0 +1,19 @@
1
+ # nextReactiveId
2
+
3
+ Allocate a unique reactive target ID from the same counter space as ref IDs.
4
+
5
+ ```ts
6
+ import { nextReactiveId } from "@alloy-js/core";
7
+
8
+
9
+ function nextReactiveId(): number;
10
+ ```
11
+
12
+ ## Parameters
13
+
14
+ | |
15
+ | - |
16
+
17
+ ## Returns
18
+
19
+ number
@@ -0,0 +1,17 @@
1
+ # notifyContentState
2
+
3
+ ```ts
4
+ import { notifyContentState } from "@alloy-js/core";
5
+
6
+
7
+ function notifyContentState(): void;
8
+ ```
9
+
10
+ ## Parameters
11
+
12
+ | |
13
+ | - |
14
+
15
+ ## Returns
16
+
17
+ void
@@ -0,0 +1,26 @@
1
+ # onCleanup
2
+
3
+ Register a cleanup function which is called when the current reactive scope is recalculated or disposed. This is useful to clean up any side effects created in the reactive scope.
4
+
5
+ ```ts
6
+ import { onCleanup } from "@alloy-js/core";
7
+
8
+
9
+ function onCleanup(fn: Disposable): void;
10
+ ```
11
+
12
+ ## Parameters
13
+
14
+ | | | |
15
+ | -- | ---------- | - |
16
+ | fn | Disposable | |
17
+
18
+ ## Returns
19
+
20
+ void
21
+
22
+ ## Remarks
23
+
24
+ When onCleanup is called inside a component definition, the provided function is called when the component is removed from the tree. This can be useful to clean up any side effects created as a result of rendering the component. For example, if rendering a component creates a symbol, `onCleanup` can be used to remove the symbol when the component is removed from the tree.
25
+
26
+ When onCleanup is called inside a memo or effect, the function is called when the effect is refreshed (e.g. when a memo or computed recalculates) or disposed (e.g. it is no longer needed because it is attached to a component which was removed).
@@ -0,0 +1,31 @@
1
+ # printTree
2
+
3
+ Convert a rendered text tree to a string. Will ensure that the scheduler is empty before printing.
4
+
5
+ ```ts
6
+ import { printTree } from "@alloy-js/core";
7
+
8
+
9
+ function printTree(tree: RenderedTextTree, options?: PrintTreeOptions): string;
10
+ ```
11
+
12
+ ## Parameters
13
+
14
+ | | | |
15
+ | ------- | ------------------------- | - |
16
+ | tree | RenderedTextTree | |
17
+ | options | optional PrintTreeOptions | |
18
+
19
+ ## Options
20
+
21
+ | | | |
22
+ | ------------------ | ---------------- | ------------------------------------------------------------------------------ |
23
+ | insertFinalNewLine | optional boolean | If files should end with a final new line. |
24
+ | noFlush | optional boolean | Skip flushing scheduled jobs before printing. |
25
+ | printWidth | optional number | The number of characters the printer will wrap on. Defaults to 100 characters. |
26
+ | tabWidth | optional number | The number of spaces to use for indentation. Defaults to 2 spaces. |
27
+ | useTabs | optional boolean | Whether to use tabs instead of spaces for indentation. Defaults to false. |
28
+
29
+ ## Returns
30
+
31
+ string
@@ -0,0 +1,21 @@
1
+ # reactivePropertyRefId
2
+
3
+ Get a stable ref ID for a property of a reactive object. Each (target, key) pair gets a unique positive ID from the same counter as refs.
4
+
5
+ ```ts
6
+ import { reactivePropertyRefId } from "@alloy-js/core";
7
+
8
+
9
+ function reactivePropertyRefId(target: object, key: string | number): number;
10
+ ```
11
+
12
+ ## Parameters
13
+
14
+ | | | |
15
+ | ------ | ---------------- | - |
16
+ | target | object | |
17
+ | key | string \| number | |
18
+
19
+ ## Returns
20
+
21
+ number
@@ -0,0 +1,21 @@
1
+ # ref
2
+
3
+ ```ts
4
+ import { ref } from "@alloy-js/core";
5
+
6
+
7
+ function ref<T>(value?: T, options?: {
8
+ isInfrastructure?: boolean;
9
+ }): Ref<T>;
10
+ ```
11
+
12
+ ## Parameters
13
+
14
+ | | | |
15
+ | ------- | ---------------------------------------- | - |
16
+ | value | optional T | |
17
+ | options | optional { isInfrastructure?: boolean; } | |
18
+
19
+ ## Returns
20
+
21
+ Ref\<T>
@@ -0,0 +1,18 @@
1
+ # refId
2
+
3
+ ```ts
4
+ import { refId } from "@alloy-js/core";
5
+
6
+
7
+ function refId(ref: Ref<unknown>): number;
8
+ ```
9
+
10
+ ## Parameters
11
+
12
+ | | | |
13
+ | --- | ------------- | - |
14
+ | ref | Ref\<unknown> | |
15
+
16
+ ## Returns
17
+
18
+ number
@@ -0,0 +1,24 @@
1
+ # refkey
2
+
3
+ Create a refkey for the provided arguments. Passing no arguments returns a fresh refkey that is guaranteed to be unique. Otherwise, the arguments passed will be used to create a refkey for those values. Providing the same arguments will always return the same refkey.
4
+
5
+ ```ts
6
+ import { refkey } from "@alloy-js/core";
7
+
8
+
9
+ function refkey(...args: unknown[]): Refkey;
10
+ ```
11
+
12
+ ## Parameters
13
+
14
+ | | | |
15
+ | ---- | ---------- | - |
16
+ | args | unknown\[] | |
17
+
18
+ ## Returns
19
+
20
+ [Refkey](../../types/refkey/)
21
+
22
+ ## Remarks
23
+
24
+ Values are compared using the SameValueZero algorithm, which considers objects the same if they are reference identical, and primitives the same if they are the same value, with the exception of `NaN`, which is always considered equal to other `NaN` values, and `-0`, which is considered identical to `+0`
@@ -0,0 +1,31 @@
1
+ # render
2
+
3
+ Render a component tree to source directories and files. Will ensure that all non-async scheduled jobs are completed before returning. If async jobs are found, an error will be thrown. Use `renderAsync` when asynchronous jobs are expected.
4
+
5
+ ```ts
6
+ import { render } from "@alloy-js/core";
7
+
8
+
9
+ function render(children: Children, options?: PrintTreeOptions): OutputDirectory;
10
+ ```
11
+
12
+ ## Parameters
13
+
14
+ | | | |
15
+ | -------- | ------------------------- | - |
16
+ | children | Children | |
17
+ | options | optional PrintTreeOptions | |
18
+
19
+ ## Options
20
+
21
+ | | | |
22
+ | ------------------ | ---------------- | ------------------------------------------------------------------------------ |
23
+ | insertFinalNewLine | optional boolean | If files should end with a final new line. |
24
+ | noFlush | optional boolean | Skip flushing scheduled jobs before printing. |
25
+ | printWidth | optional number | The number of characters the printer will wrap on. Defaults to 100 characters. |
26
+ | tabWidth | optional number | The number of spaces to use for indentation. Defaults to 2 spaces. |
27
+ | useTabs | optional boolean | Whether to use tabs instead of spaces for indentation. Defaults to false. |
28
+
29
+ ## Returns
30
+
31
+ [OutputDirectory](../../types/outputdirectory/)
@@ -0,0 +1,31 @@
1
+ # renderAsync
2
+
3
+ Render a component tree to source directories and files. Will ensure that all scheduled jobs are completed before returning.
4
+
5
+ ```ts
6
+ import { renderAsync } from "@alloy-js/core";
7
+
8
+
9
+ function renderAsync(children: Children, options?: PrintTreeOptions): Promise<OutputDirectory>;
10
+ ```
11
+
12
+ ## Parameters
13
+
14
+ | | | |
15
+ | -------- | ------------------------- | - |
16
+ | children | Children | |
17
+ | options | optional PrintTreeOptions | |
18
+
19
+ ## Options
20
+
21
+ | | | |
22
+ | ------------------ | ---------------- | ------------------------------------------------------------------------------ |
23
+ | insertFinalNewLine | optional boolean | If files should end with a final new line. |
24
+ | noFlush | optional boolean | Skip flushing scheduled jobs before printing. |
25
+ | printWidth | optional number | The number of characters the printer will wrap on. Defaults to 100 characters. |
26
+ | tabWidth | optional number | The number of spaces to use for indentation. Defaults to 2 spaces. |
27
+ | useTabs | optional boolean | Whether to use tabs instead of spaces for indentation. Defaults to false. |
28
+
29
+ ## Returns
30
+
31
+ Promise<[OutputDirectory](../../types/outputdirectory/)>
@@ -0,0 +1,18 @@
1
+ # renderTree
2
+
3
+ ```ts
4
+ import { renderTree } from "@alloy-js/core";
5
+
6
+
7
+ function renderTree(children: Children): RenderedTextTree;
8
+ ```
9
+
10
+ ## Parameters
11
+
12
+ | | | |
13
+ | -------- | -------- | - |
14
+ | children | Children | |
15
+
16
+ ## Returns
17
+
18
+ [RenderedTextTree](../../types/renderedtexttree/)
@@ -0,0 +1,18 @@
1
+ # reportDiagnostics
2
+
3
+ ```ts
4
+ import { reportDiagnostics } from "@alloy-js/core";
5
+
6
+
7
+ function reportDiagnostics(collector: DiagnosticsCollector): void;
8
+ ```
9
+
10
+ ## Parameters
11
+
12
+ | | | |
13
+ | --------- | -------------------- | - |
14
+ | collector | DiagnosticsCollector | |
15
+
16
+ ## Returns
17
+
18
+ void
@@ -0,0 +1,17 @@
1
+ # resetRefIdCounter
2
+
3
+ ```ts
4
+ import { resetRefIdCounter } from "@alloy-js/core";
5
+
6
+
7
+ function resetRefIdCounter(): void;
8
+ ```
9
+
10
+ ## Parameters
11
+
12
+ | |
13
+ | - |
14
+
15
+ ## Returns
16
+
17
+ void
@@ -0,0 +1,31 @@
1
+ # resolve
2
+
3
+ Resolve a refkey in the current scope. Returns a Ref for the resolution result. The value of the ref will be undefined if the identifier hasn’t been resolved yet.
4
+
5
+ ```ts
6
+ import { resolve } from "@alloy-js/core";
7
+
8
+
9
+ function resolve<TScope extends OutputScope, TSymbol extends OutputSymbol>(refkey: Refkey, options?: ResolveDeclarationByKeyOptions<TScope, TSymbol>): Ref<ResolutionResult<TScope, TSymbol>>;
10
+ ```
11
+
12
+ ## Parameters
13
+
14
+ | | | |
15
+ | ------- | --------------------------------------------------------- | - |
16
+ | refkey | Refkey | |
17
+ | options | optional ResolveDeclarationByKeyOptions\<TScope, TSymbol> | |
18
+
19
+ ## Options
20
+
21
+ | | | |
22
+ | -------------- | ------------------------------------------------------------------------ | - |
23
+ | memberResolver | optional [MemberResolver](../../types/memberresolver/)\<TScope, TSymbol> | |
24
+
25
+ ## Returns
26
+
27
+ Ref<[ResolutionResult](../../types/resolutionresult/)\<TScope, TSymbol>>
28
+
29
+ ## Remarks
30
+
31
+ This API may return a ref for undefined, but that does not mean that the symbol is not found. The symbol you’re looking for may not have been declared yet. When the symbol is declared, the ref will be updated with the resolution result.
@@ -0,0 +1,25 @@
1
+ # root
2
+
3
+ ```ts
4
+ import { root } from "@alloy-js/core";
5
+
6
+
7
+ function root<T>(fn: (d: Disposable) => T, options?: RootOptions): T;
8
+ ```
9
+
10
+ ## Parameters
11
+
12
+ | | | |
13
+ | ------- | -------------------- | - |
14
+ | fn | (d: Disposable) => T | |
15
+ | options | optional RootOptions | |
16
+
17
+ ## Options
18
+
19
+ | | | |
20
+ | -------------- | ---------------------------------------------------------------- | - |
21
+ | componentOwner | optional [ComponentCreator](../../types/componentcreator/)\<any> | |
22
+
23
+ ## Returns
24
+
25
+ T
@@ -0,0 +1,18 @@
1
+ # shallowReactive
2
+
3
+ ```ts
4
+ import { shallowReactive } from "@alloy-js/core";
5
+
6
+
7
+ function shallowReactive<T extends object>(target: T): ShallowReactive<T>;
8
+ ```
9
+
10
+ ## Parameters
11
+
12
+ | | | |
13
+ | ------ | - | - |
14
+ | target | T | |
15
+
16
+ ## Returns
17
+
18
+ ShallowReactive\<T>
@@ -0,0 +1,21 @@
1
+ # shallowRef
2
+
3
+ ```ts
4
+ import { shallowRef } from "@alloy-js/core";
5
+
6
+
7
+ function shallowRef<T>(value?: T, options?: {
8
+ label?: string;
9
+ }): Ref<T>;
10
+ ```
11
+
12
+ ## Parameters
13
+
14
+ | | | |
15
+ | ------- | ---------------------------- | - |
16
+ | value | optional T | |
17
+ | options | optional { label?: string; } | |
18
+
19
+ ## Returns
20
+
21
+ Ref\<T>
@@ -0,0 +1,31 @@
1
+ # sourceFilesForTree
2
+
3
+ Convert a rendered text tree to source directories and files. Will ensure that all scheduled jobs are completed before returning.
4
+
5
+ ```ts
6
+ import { sourceFilesForTree } from "@alloy-js/core";
7
+
8
+
9
+ function sourceFilesForTree(tree: RenderedTextTree, options?: PrintTreeOptions): OutputDirectory;
10
+ ```
11
+
12
+ ## Parameters
13
+
14
+ | | | |
15
+ | ------- | ------------------------- | - |
16
+ | tree | RenderedTextTree | |
17
+ | options | optional PrintTreeOptions | |
18
+
19
+ ## Options
20
+
21
+ | | | |
22
+ | ------------------ | ---------------- | ------------------------------------------------------------------------------ |
23
+ | insertFinalNewLine | optional boolean | If files should end with a final new line. |
24
+ | noFlush | optional boolean | Skip flushing scheduled jobs before printing. |
25
+ | printWidth | optional number | The number of characters the printer will wrap on. Defaults to 100 characters. |
26
+ | tabWidth | optional number | The number of spaces to use for indentation. Defaults to 2 spaces. |
27
+ | useTabs | optional boolean | Whether to use tabs instead of spaces for indentation. Defaults to false. |
28
+
29
+ ## Returns
30
+
31
+ [OutputDirectory](../../types/outputdirectory/)
@@ -0,0 +1,19 @@
1
+ # splitProps
2
+
3
+ ```ts
4
+ import { splitProps } from "@alloy-js/core";
5
+
6
+
7
+ function splitProps<T extends Record<any, any>, K extends [readonly (keyof T)[], ...(readonly (keyof T)[])[]]>(props: T, ...keys: K): SplitProps<T, K>;
8
+ ```
9
+
10
+ ## Parameters
11
+
12
+ | | | |
13
+ | ----- | - | - |
14
+ | props | T | |
15
+ | keys | K | |
16
+
17
+ ## Returns
18
+
19
+ [SplitProps](../../types/splitprops/)\<T, K>
@@ -0,0 +1,18 @@
1
+ # stc
2
+
3
+ ```ts
4
+ import { stc } from "@alloy-js/core";
5
+
6
+
7
+ function stc<T extends {}>(Component: ComponentDefinition<T>): StcSignature<T>;
8
+ ```
9
+
10
+ ## Parameters
11
+
12
+ | | | |
13
+ | --------- | ----------------------- | - |
14
+ | Component | ComponentDefinition\<T> | |
15
+
16
+ ## Returns
17
+
18
+ [StcSignature](../../types/stcsignature/)\<T>
@@ -0,0 +1,18 @@
1
+ # sti
2
+
3
+ ```ts
4
+ import { sti } from "@alloy-js/core";
5
+
6
+
7
+ function sti<T extends keyof IntrinsicElements>(name: T): StiSignature<T>;
8
+ ```
9
+
10
+ ## Parameters
11
+
12
+ | | | |
13
+ | ---- | - | - |
14
+ | name | T | |
15
+
16
+ ## Returns
17
+
18
+ [StiSignature](../../types/stisignature/)\<T>