@alloy-js/core 0.23.0-dev.0 → 0.23.0-dev.8

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 (269) hide show
  1. package/CHANGELOG.md +0 -22
  2. package/dist/devtools/index.html +68 -0
  3. package/dist/src/binder.d.ts +2 -0
  4. package/dist/src/binder.d.ts.map +1 -1
  5. package/dist/src/binder.js +55 -12
  6. package/dist/src/binder.js.map +1 -1
  7. package/dist/src/components/AppendFile.d.ts.map +1 -1
  8. package/dist/src/components/AppendFile.js +14 -3
  9. package/dist/src/components/AppendFile.js.map +1 -1
  10. package/dist/src/components/Block.js +1 -1
  11. package/dist/src/components/Block.js.map +1 -1
  12. package/dist/src/components/Declaration.d.ts.map +1 -1
  13. package/dist/src/components/Declaration.js +2 -1
  14. package/dist/src/components/Declaration.js.map +1 -1
  15. package/dist/src/components/Scope.d.ts.map +1 -1
  16. package/dist/src/components/Scope.js +4 -1
  17. package/dist/src/components/Scope.js.map +1 -1
  18. package/dist/src/components/TemplateFile.d.ts.map +1 -1
  19. package/dist/src/components/TemplateFile.js +18 -3
  20. package/dist/src/components/TemplateFile.js.map +1 -1
  21. package/dist/src/content-slot.d.ts.map +1 -1
  22. package/dist/src/content-slot.js +6 -5
  23. package/dist/src/content-slot.js.map +1 -1
  24. package/dist/src/context.d.ts.map +1 -1
  25. package/dist/src/context.js +8 -1
  26. package/dist/src/context.js.map +1 -1
  27. package/dist/src/debug/cli.d.ts +6 -0
  28. package/dist/src/debug/cli.d.ts.map +1 -0
  29. package/dist/src/{debug.js → debug/cli.js} +78 -84
  30. package/dist/src/debug/cli.js.map +1 -0
  31. package/dist/src/debug/diagnostics.test.d.ts +2 -0
  32. package/dist/src/debug/diagnostics.test.d.ts.map +1 -0
  33. package/dist/src/debug/diagnostics.test.js +45 -0
  34. package/dist/src/debug/diagnostics.test.js.map +1 -0
  35. package/dist/src/debug/effects.d.ts +69 -0
  36. package/dist/src/debug/effects.d.ts.map +1 -0
  37. package/dist/src/debug/effects.js +228 -0
  38. package/dist/src/debug/effects.js.map +1 -0
  39. package/dist/src/debug/effects.test.d.ts +2 -0
  40. package/dist/src/debug/effects.test.d.ts.map +1 -0
  41. package/dist/src/debug/effects.test.js +86 -0
  42. package/dist/src/debug/effects.test.js.map +1 -0
  43. package/dist/src/debug/files.d.ts +14 -0
  44. package/dist/src/debug/files.d.ts.map +1 -0
  45. package/dist/src/debug/files.js +40 -0
  46. package/dist/src/debug/files.js.map +1 -0
  47. package/dist/src/debug/files.test.d.ts +2 -0
  48. package/dist/src/debug/files.test.d.ts.map +1 -0
  49. package/dist/src/debug/files.test.js +89 -0
  50. package/dist/src/debug/files.test.js.map +1 -0
  51. package/dist/src/debug/index.d.ts +60 -0
  52. package/dist/src/debug/index.d.ts.map +1 -0
  53. package/dist/src/debug/index.js +68 -0
  54. package/dist/src/debug/index.js.map +1 -0
  55. package/dist/src/debug/render.d.ts +57 -0
  56. package/dist/src/debug/render.d.ts.map +1 -0
  57. package/dist/src/debug/render.js +519 -0
  58. package/dist/src/debug/render.js.map +1 -0
  59. package/dist/src/debug/render.test.d.ts +2 -0
  60. package/dist/src/debug/render.test.d.ts.map +1 -0
  61. package/dist/src/debug/render.test.js +328 -0
  62. package/dist/src/debug/render.test.js.map +1 -0
  63. package/dist/src/debug/serialize.d.ts +9 -0
  64. package/dist/src/debug/serialize.d.ts.map +1 -0
  65. package/dist/src/debug/serialize.js +70 -0
  66. package/dist/src/debug/serialize.js.map +1 -0
  67. package/dist/src/debug/symbols.d.ts +9 -0
  68. package/dist/src/debug/symbols.d.ts.map +1 -0
  69. package/dist/src/debug/symbols.js +164 -0
  70. package/dist/src/debug/symbols.js.map +1 -0
  71. package/dist/src/debug/symbols.test.d.ts +2 -0
  72. package/dist/src/debug/symbols.test.d.ts.map +1 -0
  73. package/dist/src/debug/symbols.test.js +104 -0
  74. package/dist/src/debug/symbols.test.js.map +1 -0
  75. package/dist/src/debug/trace.d.ts +342 -0
  76. package/dist/src/debug/trace.d.ts.map +1 -0
  77. package/dist/src/debug/trace.js +443 -0
  78. package/dist/src/debug/trace.js.map +1 -0
  79. package/dist/src/devtools/devtools-protocol.d.ts +232 -0
  80. package/dist/src/devtools/devtools-protocol.d.ts.map +1 -0
  81. package/dist/src/devtools/devtools-protocol.js +2 -0
  82. package/dist/src/devtools/devtools-protocol.js.map +1 -0
  83. package/dist/src/devtools/devtools-server.browser.d.ts +28 -0
  84. package/dist/src/devtools/devtools-server.browser.d.ts.map +1 -0
  85. package/dist/src/devtools/devtools-server.browser.js +36 -0
  86. package/dist/src/devtools/devtools-server.browser.js.map +1 -0
  87. package/dist/src/devtools/devtools-server.d.ts +72 -0
  88. package/dist/src/devtools/devtools-server.d.ts.map +1 -0
  89. package/dist/src/devtools/devtools-server.js +256 -0
  90. package/dist/src/devtools/devtools-server.js.map +1 -0
  91. package/dist/src/devtools/devtools-transport.d.ts +23 -0
  92. package/dist/src/devtools/devtools-transport.d.ts.map +1 -0
  93. package/dist/src/devtools/devtools-transport.js +114 -0
  94. package/dist/src/devtools/devtools-transport.js.map +1 -0
  95. package/dist/src/devtools-entry.browser.d.ts +4 -0
  96. package/dist/src/devtools-entry.browser.d.ts.map +1 -0
  97. package/dist/src/devtools-entry.browser.js +2 -0
  98. package/dist/src/devtools-entry.browser.js.map +1 -0
  99. package/dist/src/devtools-entry.d.ts +4 -0
  100. package/dist/src/devtools-entry.d.ts.map +1 -0
  101. package/dist/src/devtools-entry.js +2 -0
  102. package/dist/src/devtools-entry.js.map +1 -0
  103. package/dist/src/diagnostics.d.ts +34 -0
  104. package/dist/src/diagnostics.d.ts.map +1 -0
  105. package/dist/src/diagnostics.js +89 -0
  106. package/dist/src/diagnostics.js.map +1 -0
  107. package/dist/src/index.d.ts +3 -2
  108. package/dist/src/index.d.ts.map +1 -1
  109. package/dist/src/index.js +3 -2
  110. package/dist/src/index.js.map +1 -1
  111. package/dist/src/print-hook.d.ts +14 -0
  112. package/dist/src/print-hook.d.ts.map +1 -0
  113. package/dist/src/print-hook.js +10 -0
  114. package/dist/src/print-hook.js.map +1 -0
  115. package/dist/src/reactive-union-set.d.ts.map +1 -1
  116. package/dist/src/reactive-union-set.js +15 -0
  117. package/dist/src/reactive-union-set.js.map +1 -1
  118. package/dist/src/reactivity.d.ts +17 -3
  119. package/dist/src/reactivity.d.ts.map +1 -1
  120. package/dist/src/reactivity.js +162 -14
  121. package/dist/src/reactivity.js.map +1 -1
  122. package/dist/src/render-stack.d.ts +29 -0
  123. package/dist/src/render-stack.d.ts.map +1 -0
  124. package/dist/src/render-stack.js +247 -0
  125. package/dist/src/render-stack.js.map +1 -0
  126. package/dist/src/render.d.ts +9 -19
  127. package/dist/src/render.d.ts.map +1 -1
  128. package/dist/src/render.js +363 -153
  129. package/dist/src/render.js.map +1 -1
  130. package/dist/src/resource.d.ts.map +1 -1
  131. package/dist/src/resource.js +5 -0
  132. package/dist/src/resource.js.map +1 -1
  133. package/dist/src/runtime/component.d.ts +7 -1
  134. package/dist/src/runtime/component.d.ts.map +1 -1
  135. package/dist/src/runtime/component.js +4 -1
  136. package/dist/src/runtime/component.js.map +1 -1
  137. package/dist/src/scheduler.d.ts +3 -0
  138. package/dist/src/scheduler.d.ts.map +1 -1
  139. package/dist/src/scheduler.js +45 -2
  140. package/dist/src/scheduler.js.map +1 -1
  141. package/dist/src/symbols/basic-symbol.d.ts.map +1 -1
  142. package/dist/src/symbols/basic-symbol.js +6 -1
  143. package/dist/src/symbols/basic-symbol.js.map +1 -1
  144. package/dist/src/symbols/decl.d.ts.map +1 -1
  145. package/dist/src/symbols/decl.js +5 -1
  146. package/dist/src/symbols/decl.js.map +1 -1
  147. package/dist/src/symbols/output-scope.d.ts +2 -1
  148. package/dist/src/symbols/output-scope.d.ts.map +1 -1
  149. package/dist/src/symbols/output-scope.js +13 -8
  150. package/dist/src/symbols/output-scope.js.map +1 -1
  151. package/dist/src/symbols/output-symbol.d.ts +1 -0
  152. package/dist/src/symbols/output-symbol.d.ts.map +1 -1
  153. package/dist/src/symbols/output-symbol.js +23 -6
  154. package/dist/src/symbols/output-symbol.js.map +1 -1
  155. package/dist/src/symbols/symbol-flow.d.ts.map +1 -1
  156. package/dist/src/symbols/symbol-flow.js +22 -6
  157. package/dist/src/symbols/symbol-flow.js.map +1 -1
  158. package/dist/src/symbols/symbol-slot.d.ts.map +1 -1
  159. package/dist/src/symbols/symbol-slot.js +15 -0
  160. package/dist/src/symbols/symbol-slot.js.map +1 -1
  161. package/dist/src/symbols/symbol-slot.test.d.ts +2 -0
  162. package/dist/src/symbols/symbol-slot.test.d.ts.map +1 -0
  163. package/dist/src/symbols/symbol-slot.test.js +35 -0
  164. package/dist/src/symbols/symbol-slot.test.js.map +1 -0
  165. package/dist/src/symbols/symbol-table.d.ts.map +1 -1
  166. package/dist/src/symbols/symbol-table.js +6 -5
  167. package/dist/src/symbols/symbol-table.js.map +1 -1
  168. package/dist/src/trace.d.ts +2 -0
  169. package/dist/src/trace.d.ts.map +1 -0
  170. package/dist/src/trace.js +2 -0
  171. package/dist/src/trace.js.map +1 -0
  172. package/dist/src/tracer.d.ts +2 -228
  173. package/dist/src/tracer.d.ts.map +1 -1
  174. package/dist/src/tracer.js +5 -298
  175. package/dist/src/tracer.js.map +1 -1
  176. package/dist/src/utils.d.ts.map +1 -1
  177. package/dist/src/utils.js +5 -0
  178. package/dist/src/utils.js.map +1 -1
  179. package/dist/test/components/append-file.test.d.ts.map +1 -1
  180. package/dist/test/components/append-file.test.js +18 -10
  181. package/dist/test/components/append-file.test.js.map +1 -1
  182. package/dist/test/components/template-file.test.d.ts.map +1 -1
  183. package/dist/test/components/template-file.test.js +6 -4
  184. package/dist/test/components/template-file.test.js.map +1 -1
  185. package/dist/test/rendering/basic.test.js +3 -0
  186. package/dist/test/rendering/basic.test.js.map +1 -1
  187. package/dist/test/rendering/print-render-stack.test.d.ts +2 -0
  188. package/dist/test/rendering/print-render-stack.test.d.ts.map +1 -0
  189. package/dist/test/rendering/print-render-stack.test.js +207 -0
  190. package/dist/test/rendering/print-render-stack.test.js.map +1 -0
  191. package/dist/testing/create-test-wrapper.d.ts +1 -1
  192. package/dist/testing/create-test-wrapper.d.ts.map +1 -1
  193. package/dist/testing/create-test-wrapper.js +1 -1
  194. package/dist/testing/create-test-wrapper.js.map +1 -1
  195. package/dist/testing/devtools-utils.d.ts +26 -0
  196. package/dist/testing/devtools-utils.d.ts.map +1 -0
  197. package/dist/testing/devtools-utils.js +140 -0
  198. package/dist/testing/devtools-utils.js.map +1 -0
  199. package/dist/testing/extend-expect.d.ts.map +1 -1
  200. package/dist/testing/extend-expect.js +63 -1
  201. package/dist/testing/extend-expect.js.map +1 -1
  202. package/dist/testing/render.d.ts +2 -2
  203. package/dist/testing/render.d.ts.map +1 -1
  204. package/dist/testing/render.js +2 -2
  205. package/dist/testing/render.js.map +1 -1
  206. package/dist/tsconfig.tsbuildinfo +1 -1
  207. package/package.json +21 -7
  208. package/scripts/copy-devtools-ui.mjs +26 -0
  209. package/src/binder.ts +71 -16
  210. package/src/components/AppendFile.tsx +14 -9
  211. package/src/components/Block.tsx +1 -1
  212. package/src/components/Declaration.tsx +2 -1
  213. package/src/components/Scope.tsx +4 -1
  214. package/src/components/TemplateFile.tsx +18 -9
  215. package/src/content-slot.tsx +6 -6
  216. package/src/context.ts +15 -4
  217. package/src/{debug.ts → debug/cli.ts} +112 -127
  218. package/src/debug/diagnostics.test.tsx +55 -0
  219. package/src/debug/effects.test.tsx +96 -0
  220. package/src/debug/effects.ts +313 -0
  221. package/src/debug/files.test.tsx +96 -0
  222. package/src/debug/files.ts +40 -0
  223. package/src/debug/index.ts +126 -0
  224. package/src/debug/render.test.tsx +379 -0
  225. package/src/debug/render.ts +639 -0
  226. package/src/debug/serialize.ts +85 -0
  227. package/src/debug/symbols.test.tsx +106 -0
  228. package/src/debug/symbols.ts +230 -0
  229. package/src/debug/trace.ts +312 -0
  230. package/src/devtools/devtools-protocol.ts +312 -0
  231. package/src/devtools/devtools-server.browser.ts +71 -0
  232. package/src/devtools/devtools-server.ts +290 -0
  233. package/src/devtools/devtools-transport.ts +154 -0
  234. package/src/devtools-entry.browser.ts +52 -0
  235. package/src/devtools-entry.ts +54 -0
  236. package/src/diagnostics.ts +141 -0
  237. package/src/index.ts +2 -6
  238. package/src/print-hook.ts +22 -0
  239. package/src/reactive-union-set.ts +71 -41
  240. package/src/reactivity.ts +206 -23
  241. package/src/render-stack.ts +289 -0
  242. package/src/render.ts +464 -212
  243. package/src/resource.ts +28 -19
  244. package/src/runtime/component.ts +11 -0
  245. package/src/scheduler.ts +55 -3
  246. package/src/symbols/basic-symbol.ts +6 -1
  247. package/src/symbols/decl.ts +5 -1
  248. package/src/symbols/output-scope.ts +21 -12
  249. package/src/symbols/output-symbol.ts +33 -12
  250. package/src/symbols/symbol-flow.ts +68 -37
  251. package/src/symbols/symbol-slot.test.tsx +41 -0
  252. package/src/symbols/symbol-slot.tsx +47 -20
  253. package/src/symbols/symbol-table.ts +6 -10
  254. package/src/trace.ts +1 -0
  255. package/src/tracer.ts +13 -242
  256. package/src/utils.tsx +22 -13
  257. package/temp/api.json +1811 -277
  258. package/test/components/append-file.test.tsx +36 -29
  259. package/test/components/template-file.test.tsx +11 -11
  260. package/test/rendering/basic.test.tsx +4 -0
  261. package/test/rendering/print-render-stack.test.tsx +244 -0
  262. package/testing/create-test-wrapper.tsx +1 -1
  263. package/testing/devtools-utils.ts +203 -0
  264. package/testing/extend-expect.ts +89 -0
  265. package/testing/render.ts +2 -2
  266. package/testing/vitest.d.ts +9 -0
  267. package/dist/src/debug.d.ts +0 -15
  268. package/dist/src/debug.d.ts.map +0 -1
  269. package/dist/src/debug.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["isRef","pauseTracking","ref","resetTracking","shallowRef","stop","effect","vueEffect","scheduler","trace","TracePhase","globalThis","__ALLOY__","Error","getElementCache","getContext","elementCache","globalContext","root","fn","options","context","componentOwner","disposables","owner","Map","takesSymbols","takenSymbols","undefined","childrenWithContent","isEmpty","isRoot","ret","untrack","d","v","memo","equal","o","prev","res","value","current","cleanupFn","final","k","len","length","runner","onCleanup","oldContext","flags","onTrack","event","track","target","refId","String","key","onTrigger","trigger","push","CUSTOM_CONTEXT_SYM","Symbol","createCustomContext","useCallback","useCustomContext","useCb","isCustomContext","child","Object","hasOwn","seenRefs","WeakMap","refIdCounter","id","get","set"],"sources":["../../src/reactivity.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["isRef","pauseTracking","resetTracking","stop","computed","vueComputed","effect","vueEffect","ref","vueRef","shallowRef","vueShallowRef","toRef","vueToRef","toRefs","vueToRefs","captureSourceLocation","debug","isDevtoolsEnabled","scheduler","attachEffectWriteDebug","refValue","kind","descriptor","Object","getOwnPropertyDescriptor","getPrototypeOf","get","set","__alloyDebugWrapped","defineProperty","value","call","effectId","globalContext","meta","undefined","id","refId","ensureRef","trigger","target","location","enumerable","configurable","globalThis","__ALLOY__","Error","getElementCache","getContext","elementCache","root","fn","options","context","componentOwner","disposables","owner","Map","takesSymbols","takenSymbols","childrenWithContent","isEmpty","isRoot","ret","untrack","d","v","memo","equal","o","prev","res","name","current","debugInfo","register","type","createdAt","cleanupFn","final","k","len","length","runner","onCleanup","oldContext","flags","onTrack","event","targetKey","key","toString","track","onTrigger","push","CUSTOM_CONTEXT_SYM","Symbol","createCustomContext","useCallback","useCustomContext","useCb","isCustomContext","child","hasOwn","result","registerRef","createdByEffectId","getter","object","defaultValue","values","seenRefs","WeakMap","refIdCounter"],"sources":["../../src/reactivity.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,29 @@
1
+ import { Context } from "./reactivity.js";
2
+ import { Component, Props, SourceLocation } from "./runtime/component.js";
3
+ export interface RenderStackSnapshotEntry {
4
+ component: Component<any>;
5
+ props: Props;
6
+ context: Context | null;
7
+ source?: SourceLocation;
8
+ displayName: string;
9
+ }
10
+ export declare function pushStack(component: Component<any>, props: Props, source?: SourceLocation): void;
11
+ export declare function popStack(): void;
12
+ export declare function clearRenderStack(): void;
13
+ /**
14
+ * Get the current rendering path from the render stack context.
15
+ * Prefers SourceFileContext over SourceDirectoryContext.
16
+ */
17
+ export declare function getCurrentRenderPath(): string | undefined;
18
+ export declare function getRenderStackSnapshot(): RenderStackSnapshotEntry[];
19
+ /**
20
+ * Print the current render stack to the console for debugging.
21
+ *
22
+ * This differs from debug.component.stack in that this uses a purpose-built
23
+ * stack rather than walking the context chain. When this is called, the context
24
+ * chain has been restored. In the future this can probably be unified nicely.
25
+ *
26
+ * @param error - Optional error to print the stack trace from
27
+ */
28
+ export declare function printRenderStack(error?: unknown): void;
29
+ //# sourceMappingURL=render-stack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render-stack.d.ts","sourceRoot":"","sources":["../../src/render-stack.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAc,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAU1E,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;IAC1B,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,SAAS,CACvB,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,EACzB,KAAK,EAAE,KAAK,EACZ,MAAM,CAAC,EAAE,cAAc,QAGxB;AAED,wBAAgB,QAAQ,SAEvB;AAED,wBAAgB,gBAAgB,SAE/B;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,SAAS,CAoBzD;AAED,wBAAgB,sBAAsB,IAAI,wBAAwB,EAAE,CAQnE;AA4DD;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,CAAC,EAAE,OAAO,QAkJ/C"}
@@ -0,0 +1,247 @@
1
+ import pc from "picocolors";
2
+ import { contextsByKey } from "./context.js";
3
+ import { SourceDirectoryContext } from "./context/source-directory.js";
4
+ import { SourceFileContext } from "./context/source-file.js";
5
+ import { getContext } from "./reactivity.js";
6
+ // Store render stack for error diagnostics
7
+ const renderStack = [];
8
+ export function pushStack(component, props, source) {
9
+ renderStack.push({
10
+ component,
11
+ props,
12
+ context: getContext(),
13
+ source
14
+ });
15
+ }
16
+ export function popStack() {
17
+ renderStack.pop();
18
+ }
19
+ export function clearRenderStack() {
20
+ renderStack.length = 0;
21
+ }
22
+
23
+ /**
24
+ * Get the current rendering path from the render stack context.
25
+ * Prefers SourceFileContext over SourceDirectoryContext.
26
+ */
27
+ export function getCurrentRenderPath() {
28
+ let currentPath;
29
+ for (let i = renderStack.length - 1; i >= 0; i--) {
30
+ const {
31
+ context
32
+ } = renderStack[i];
33
+ // Prefer SourceFileContext over SourceDirectoryContext
34
+ if (context?.context?.[SourceFileContext.id]) {
35
+ const fileContext = context.context[SourceFileContext.id];
36
+ return fileContext.path;
37
+ }
38
+ if (!currentPath && context?.context?.[SourceDirectoryContext.id]) {
39
+ const dirContext = context.context[SourceDirectoryContext.id];
40
+ currentPath = dirContext.path;
41
+ // Don't break - keep looking for a SourceFileContext
42
+ }
43
+ }
44
+ return currentPath;
45
+ }
46
+ export function getRenderStackSnapshot() {
47
+ return renderStack.map(entry => ({
48
+ component: entry.component,
49
+ props: entry.props,
50
+ context: entry.context,
51
+ source: entry.source,
52
+ displayName: getComponentDisplayName(entry.component, entry.props)
53
+ }));
54
+ }
55
+
56
+ // Helper functions
57
+ function getComponentDisplayName(component, props) {
58
+ // Check if this is a Provider and if we can find its context name
59
+ if (component.name === "Provider") {
60
+ // Try to find the context this provider is associated with
61
+ for (const ctx of contextsByKey.values()) {
62
+ if (ctx.Provider === component && ctx.name) {
63
+ return ctx.name;
64
+ }
65
+ }
66
+ }
67
+ return component.name;
68
+ }
69
+ function inspectProps(props) {
70
+ const entries = Object.entries(props).filter(([key]) => key !== "children") // Exclude children prop
71
+ .map(([key, value]) => {
72
+ const formattedValue = formatValue(value);
73
+ return `${pc.dim(key)}: ${formattedValue}`;
74
+ });
75
+ return entries.length > 0 ? entries.join(pc.dim(", ")) : "";
76
+ }
77
+ function formatValue(value) {
78
+ switch (typeof value) {
79
+ case "string":
80
+ return pc.blue(`"${value}"`);
81
+ case "number":
82
+ case "boolean":
83
+ return pc.blue(String(value));
84
+ case "undefined":
85
+ return pc.gray("undefined");
86
+ case "object":
87
+ return value ? pc.gray("{...}") : pc.gray("null");
88
+ case "function":
89
+ return pc.gray("function");
90
+ default:
91
+ return pc.gray(String(value));
92
+ }
93
+ }
94
+ function formatSourceLocation(source) {
95
+ const cwd = process.cwd();
96
+ let filePath = source.fileName;
97
+
98
+ // Convert to relative path if under cwd
99
+ if (filePath.startsWith(cwd)) {
100
+ filePath = filePath.slice(cwd.length + 1); // +1 to remove leading slash
101
+ }
102
+ return `${filePath}:${source.lineNumber}:${source.columnNumber}`;
103
+ }
104
+
105
+ /**
106
+ * Print the current render stack to the console for debugging.
107
+ *
108
+ * This differs from debug.component.stack in that this uses a purpose-built
109
+ * stack rather than walking the context chain. When this is called, the context
110
+ * chain has been restored. In the future this can probably be unified nicely.
111
+ *
112
+ * @param error - Optional error to print the stack trace from
113
+ */
114
+ export function printRenderStack(error) {
115
+ // Find the nearest SourceFileContext or SourceDirectoryContext from the render stack
116
+ let currentPath;
117
+ for (let i = renderStack.length - 1; i >= 0; i--) {
118
+ const {
119
+ context
120
+ } = renderStack[i];
121
+ // Prefer SourceFileContext over SourceDirectoryContext
122
+ if (context?.context?.[SourceFileContext.id]) {
123
+ const fileContext = context.context[SourceFileContext.id];
124
+ currentPath = fileContext.path;
125
+ break;
126
+ }
127
+ if (!currentPath && context?.context?.[SourceDirectoryContext.id]) {
128
+ const dirContext = context.context[SourceDirectoryContext.id];
129
+ currentPath = dirContext.path;
130
+ // Don't break - keep looking for a SourceFileContext
131
+ }
132
+ }
133
+ if (currentPath) {
134
+ // eslint-disable-next-line no-console
135
+ console.error(pc.red(`Error rendering in file ${currentPath}`));
136
+ } else {
137
+ // eslint-disable-next-line no-console
138
+ console.error(pc.red("Error rendering:"));
139
+ }
140
+
141
+ // Print the error message and stack if provided
142
+ if (error) {
143
+ if (error instanceof Error) {
144
+ // eslint-disable-next-line no-console
145
+ console.error(pc.red(` ${error.message}`));
146
+ if (error.stack) {
147
+ // Print stack lines (skip the first line which is the error message)
148
+ const stackLines = error.stack.split("\n").slice(1);
149
+ for (const line of stackLines) {
150
+ // eslint-disable-next-line no-console
151
+ console.error(pc.gray(line));
152
+ }
153
+ }
154
+ } else {
155
+ // eslint-disable-next-line no-console
156
+ console.error(pc.red(` ${String(error)}`));
157
+ }
158
+ // eslint-disable-next-line no-console
159
+ console.error(); // Empty line before component stack
160
+ }
161
+
162
+ // First pass: determine which providers should be nested vs standalone
163
+ // A provider should be nested under its parent if it's from a different file
164
+ // (i.e., it's part of the component's implementation, not user-provided)
165
+ const nestedProviderIndices = new Set();
166
+ for (let i = renderStack.length - 1; i >= 0; i--) {
167
+ const {
168
+ component,
169
+ source
170
+ } = renderStack[i];
171
+
172
+ // Skip anonymous components and providers
173
+ if (!component.name || component.name === "Provider") {
174
+ continue;
175
+ }
176
+
177
+ // Look for providers that come immediately after this component
178
+ for (let j = i + 1; j < renderStack.length; j++) {
179
+ const providerEntry = renderStack[j];
180
+ if (!providerEntry.component.name) continue;
181
+ if (providerEntry.component.name !== "Provider") break;
182
+
183
+ // Nest provider if it's from a different file (component-internal)
184
+ const shouldNest = !source || !providerEntry.source || source.fileName !== providerEntry.source.fileName;
185
+ if (shouldNest) {
186
+ nestedProviderIndices.add(j);
187
+ } else {
188
+ // Stop looking - this provider and all after should be standalone
189
+ break;
190
+ }
191
+ }
192
+ }
193
+
194
+ // Second pass: print stack entries in order, nesting providers where appropriate
195
+ for (let i = renderStack.length - 1; i >= 0; i--) {
196
+ const {
197
+ component,
198
+ props,
199
+ source
200
+ } = renderStack[i];
201
+
202
+ // Skip anonymous components
203
+ if (!component.name) {
204
+ continue;
205
+ }
206
+
207
+ // Skip providers that will be nested under their parent
208
+ if (nestedProviderIndices.has(i)) {
209
+ continue;
210
+ }
211
+ const displayName = getComponentDisplayName(component, props);
212
+ const sourceStr = source ? pc.gray(` (${formatSourceLocation(source)})`) : "";
213
+
214
+ // eslint-disable-next-line no-console
215
+ console.error(` ${pc.cyan("at")} ${pc.bold(displayName)}${sourceStr}`);
216
+
217
+ // Print props on next line if there are any
218
+ const propsStr = inspectProps(props);
219
+ if (propsStr) {
220
+ // eslint-disable-next-line no-console
221
+ console.error(` ${propsStr}`);
222
+ }
223
+
224
+ // For non-Provider components, print any nested providers
225
+ if (component.name !== "Provider") {
226
+ for (let j = i + 1; j < renderStack.length; j++) {
227
+ if (!nestedProviderIndices.has(j)) break;
228
+ const providerEntry = renderStack[j];
229
+ if (!providerEntry.component.name) continue;
230
+ const providerName = getComponentDisplayName(providerEntry.component, providerEntry.props);
231
+ const providerSourceStr = providerEntry.source ? pc.gray(` (${formatSourceLocation(providerEntry.source)})`) : "";
232
+
233
+ // eslint-disable-next-line no-console
234
+ console.error(` ${pc.magenta("provides")} ${pc.bold(providerName)}${providerSourceStr}`);
235
+ const providerPropsStr = inspectProps(providerEntry.props);
236
+ if (providerPropsStr) {
237
+ // eslint-disable-next-line no-console
238
+ console.error(` ${providerPropsStr}`);
239
+ }
240
+ }
241
+ }
242
+ }
243
+
244
+ // Clear the stack after printing to avoid stale data on subsequent render errors
245
+ clearRenderStack();
246
+ }
247
+ //# sourceMappingURL=render-stack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["pc","contextsByKey","SourceDirectoryContext","SourceFileContext","getContext","renderStack","pushStack","component","props","source","push","context","popStack","pop","clearRenderStack","length","getCurrentRenderPath","currentPath","i","id","fileContext","path","dirContext","getRenderStackSnapshot","map","entry","displayName","getComponentDisplayName","name","ctx","values","Provider","inspectProps","entries","Object","filter","key","value","formattedValue","formatValue","dim","join","blue","String","gray","formatSourceLocation","cwd","process","filePath","fileName","startsWith","slice","lineNumber","columnNumber","printRenderStack","error","console","red","Error","message","stack","stackLines","split","line","nestedProviderIndices","Set","j","providerEntry","shouldNest","add","has","sourceStr","cyan","bold","propsStr","providerName","providerSourceStr","magenta","providerPropsStr"],"sources":["../../src/render-stack.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,6 @@
1
- import { Doc } from "prettier";
1
+ import { printHookTag, type PrintHook, type RenderedTextTree } from "./print-hook.js";
2
2
  import { Context } from "./reactivity.js";
3
- import { Children, Component, Props } from "./runtime/component.js";
3
+ import { Children } from "./runtime/component.js";
4
4
  /**
5
5
  * Turning components into source text involves three different trees produced
6
6
  * sequentially:
@@ -98,16 +98,9 @@ export interface ContentOutputFile extends OutputFileBase {
98
98
  }
99
99
  export type OutputFile = ContentOutputFile | CopyOutputFile;
100
100
  export declare function getContextForRenderNode(node: RenderedTextTree): Context | undefined;
101
- export declare const printHookTag: unique symbol;
102
- export interface PrintHook {
103
- [printHookTag]: true;
104
- transform?(tree: RenderedTextTree): RenderedTextTree;
105
- print?(tree: RenderedTextTree, print: (subtree: RenderedTextTree) => Doc): Doc;
106
- subtree: RenderedTextTree;
107
- }
101
+ export declare function getDiagnosticsForTree(tree: RenderedTextTree): import("./diagnostics.js").Diagnostic[];
102
+ export { isPrintHook, printHookTag, type PrintHook, type RenderedTextTree, } from "./print-hook.js";
108
103
  export declare function createRenderTreeHook(subtree: RenderedTextTree, hooks: Omit<PrintHook, typeof printHookTag | "subtree">): PrintHook;
109
- export declare function isPrintHook(type: unknown): type is PrintHook;
110
- export type RenderedTextTree = (string | RenderedTextTree | PrintHook)[];
111
104
  /**
112
105
  * Render a component tree to source directories and files. Will ensure that
113
106
  * all non-async scheduled jobs are completed before returning. If async jobs
@@ -120,11 +113,6 @@ export declare function render(children: Children, options?: PrintTreeOptions):
120
113
  * scheduled jobs are completed before returning.
121
114
  */
122
115
  export declare function renderAsync(children: Children, options?: PrintTreeOptions): Promise<OutputDirectory>;
123
- /**
124
- * Convert a rendered text tree to source directories and files. Will ensure that
125
- * all scheduled jobs are completed, including async ones.
126
- */
127
- export declare function sourceFilesForTreeAsync(tree: RenderedTextTree, options?: PrintTreeOptions): Promise<OutputDirectory>;
128
116
  /**
129
117
  * Convert a rendered text tree to source directories and files. Will ensure
130
118
  * that all scheduled jobs are completed before returning.
@@ -151,13 +139,15 @@ export interface PrintTreeOptions {
151
139
  * @default true
152
140
  */
153
141
  insertFinalNewLine?: boolean;
142
+ /**
143
+ * Skip flushing scheduled jobs before printing.
144
+ * @default false
145
+ */
146
+ noFlush?: boolean;
154
147
  }
155
148
  /**
156
149
  * Convert a rendered text tree to a string. Will ensure that the scheduler is
157
150
  * empty before printing.
158
151
  */
159
152
  export declare function printTree(tree: RenderedTextTree, options?: PrintTreeOptions): string;
160
- export declare function pushStack(component: Component<any>, props: Props): void;
161
- export declare function popStack(): void;
162
- export declare function printRenderStack(): void;
163
153
  //# sourceMappingURL=render.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/render.ts"],"names":[],"mappings":"AAkBA,OAAO,EAEL,YAAY,EACZ,KAAK,SAAS,EACd,KAAK,gBAAgB,EACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,OAAO,EAUR,MAAM,iBAAiB,CAAC;AAQzB,OAAO,EAEL,QAAQ,EAIT,MAAM,wBAAwB,CAAC;AA6GhC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8EG;AAEH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,CAAC,eAAe,GAAG,UAAU,CAAC,EAAE,CAAC;CAC5C;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,cAAe,SAAQ,cAAc;IACpD,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAkB,SAAQ,cAAc;IACvD,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,UAAU,GAAG,iBAAiB,GAAG,cAAc,CAAC;AAK5D,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,gBAAgB,uBAE7D;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,gBAAgB,2CAE3D;AAeD,OAAO,EACL,WAAW,EACX,YAAY,EACZ,KAAK,SAAS,EACd,KAAK,gBAAgB,GACtB,MAAM,iBAAiB,CAAC;AAEzB,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,YAAY,GAAG,SAAS,CAAC,GACtD,SAAS,CAMX;AAED;;;;;GAKG;AACH,wBAAgB,MAAM,CACpB,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE,gBAAgB,GACzB,eAAe,CAWjB;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,eAAe,CAAC,CAW1B;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,gBAAgB,EACtB,OAAO,CAAC,EAAE,gBAAgB,GACzB,eAAe,CA4FjB;AACD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,QAAQ,oBAsB5C;AA6BD,wBAAgB,kBAAkB,SAyDjC;AA0bD,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAOD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,gBAAgB,UAsB3E"}