@alloy-js/core 0.24.0-dev.2 → 0.24.0-dev.7
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.
- package/CHANGELOG.md +8 -0
- package/dist/dev/src/components/AccessExpression.test.js +30 -38
- package/dist/dev/src/components/AccessExpression.test.js.map +1 -1
- package/dist/dev/src/components/Output.js +3 -2
- package/dist/dev/src/components/Output.js.map +1 -1
- package/dist/dev/src/components/SourceFile.js.map +1 -1
- package/dist/dev/src/content-slot.test.js +16 -18
- package/dist/dev/src/content-slot.test.js.map +1 -1
- package/dist/dev/src/context.js +30 -3
- package/dist/dev/src/context.js.map +1 -1
- package/dist/dev/src/debug/diagnostics.test.js +1 -1
- package/dist/dev/src/debug/diagnostics.test.js.map +1 -1
- package/dist/dev/src/debug/effects.test.js +1 -1
- package/dist/dev/src/debug/effects.test.js.map +1 -1
- package/dist/dev/src/debug/file-streaming.js +103 -0
- package/dist/dev/src/debug/file-streaming.js.map +1 -0
- package/dist/dev/src/debug/files.test.js +4 -5
- package/dist/dev/src/debug/files.test.js.map +1 -1
- package/dist/dev/src/debug/index.js +4 -6
- package/dist/dev/src/debug/index.js.map +1 -1
- package/dist/dev/src/debug/message-format.test.js +50 -52
- package/dist/dev/src/debug/message-format.test.js.map +1 -1
- package/dist/dev/src/debug/render-tree-orphans.test.js +13 -23
- package/dist/dev/src/debug/render-tree-orphans.test.js.map +1 -1
- package/dist/dev/src/debug/render.js +529 -352
- package/dist/dev/src/debug/render.js.map +1 -1
- package/dist/dev/src/debug/render.test.js +171 -92
- package/dist/dev/src/debug/render.test.js.map +1 -1
- package/dist/dev/src/debug/trace-writer.js +127 -15
- package/dist/dev/src/debug/trace-writer.js.map +1 -1
- package/dist/dev/src/debug/trace.js +0 -36
- package/dist/dev/src/debug/trace.js.map +1 -1
- package/dist/dev/src/devtools/devtools-server.js +55 -32
- package/dist/dev/src/devtools/devtools-server.js.map +1 -1
- package/dist/dev/src/devtools-entry.browser.js.map +1 -1
- package/dist/dev/src/devtools-entry.js.map +1 -1
- package/dist/dev/src/diagnostics.js +19 -1
- package/dist/dev/src/diagnostics.js.map +1 -1
- package/dist/dev/src/index.js +5 -2
- package/dist/dev/src/index.js.map +1 -1
- package/dist/dev/src/jsx-runtime.js +14 -8
- package/dist/dev/src/jsx-runtime.js.map +1 -1
- package/dist/dev/src/output-types.js +2 -0
- package/dist/dev/src/output-types.js.map +1 -0
- package/dist/dev/src/reactivity.js +155 -13
- package/dist/dev/src/reactivity.js.map +1 -1
- package/dist/dev/src/render/get-string-width.js +61 -0
- package/dist/dev/src/render/get-string-width.js.map +1 -0
- package/dist/dev/src/render/index.js +2 -0
- package/dist/dev/src/render/index.js.map +1 -0
- package/dist/dev/src/render/node-context.js +7 -0
- package/dist/dev/src/render/node-context.js.map +1 -0
- package/dist/dev/src/render/node.js +386 -0
- package/dist/dev/src/render/node.js.map +1 -0
- package/dist/dev/src/render/printer-support.js +180 -0
- package/dist/dev/src/render/printer-support.js.map +1 -0
- package/dist/dev/src/render/printer.js +797 -0
- package/dist/dev/src/render/printer.js.map +1 -0
- package/dist/dev/src/render-error.js +79 -0
- package/dist/dev/src/render-error.js.map +1 -0
- package/dist/dev/src/render-output.js +209 -0
- package/dist/dev/src/render-output.js.map +1 -0
- package/dist/dev/src/runtime/create-intrinsic.js +53 -0
- package/dist/dev/src/runtime/create-intrinsic.js.map +1 -0
- package/dist/dev/src/runtime/fragment.js +21 -0
- package/dist/dev/src/runtime/fragment.js.map +1 -0
- package/dist/dev/src/runtime/index.js +13 -0
- package/dist/dev/src/runtime/index.js.map +1 -0
- package/dist/dev/src/runtime/insert.js +453 -0
- package/dist/dev/src/runtime/insert.js.map +1 -0
- package/dist/dev/src/runtime/intrinsic.js +1 -11
- package/dist/dev/src/runtime/intrinsic.js.map +1 -1
- package/dist/dev/src/scheduler.js +38 -14
- package/dist/dev/src/scheduler.js.map +1 -1
- package/dist/dev/src/stc.js +2 -0
- package/dist/dev/src/stc.js.map +1 -1
- package/dist/dev/src/sti.js +1 -1
- package/dist/dev/src/sti.js.map +1 -1
- package/dist/dev/src/symbols/symbol-slot.test.js +5 -5
- package/dist/dev/src/symbols/symbol-slot.test.js.map +1 -1
- package/dist/dev/src/test-render.js +78 -0
- package/dist/dev/src/test-render.js.map +1 -0
- package/dist/dev/src/utils.js +47 -35
- package/dist/dev/src/utils.js.map +1 -1
- package/dist/dev/test/babel-e2e.test.js +218 -0
- package/dist/dev/test/babel-e2e.test.js.map +1 -0
- package/dist/dev/test/children.test.js +9 -11
- package/dist/dev/test/children.test.js.map +1 -1
- package/dist/dev/test/components/append-file.test.js +26 -27
- package/dist/dev/test/components/append-file.test.js.map +1 -1
- package/dist/dev/test/components/block.test.js +9 -11
- package/dist/dev/test/components/block.test.js.map +1 -1
- package/dist/dev/test/components/copy-file.test.js +1 -2
- package/dist/dev/test/components/copy-file.test.js.map +1 -1
- package/dist/dev/test/components/declaration.test.js +2 -2
- package/dist/dev/test/components/declaration.test.js.map +1 -1
- package/dist/dev/test/components/list.test.js +41 -43
- package/dist/dev/test/components/list.test.js.map +1 -1
- package/dist/dev/test/components/prose.test.js +4 -5
- package/dist/dev/test/components/prose.test.js.map +1 -1
- package/dist/dev/test/components/reference-or-content.test.js +32 -33
- package/dist/dev/test/components/reference-or-content.test.js.map +1 -1
- package/dist/dev/test/components/source-file.test.js +8 -7
- package/dist/dev/test/components/source-file.test.js.map +1 -1
- package/dist/dev/test/components/template-file.test.js +16 -17
- package/dist/dev/test/components/template-file.test.js.map +1 -1
- package/dist/dev/test/components/update-file.test.js +11 -12
- package/dist/dev/test/components/update-file.test.js.map +1 -1
- package/dist/dev/test/components/wrap.test.js +6 -8
- package/dist/dev/test/components/wrap.test.js.map +1 -1
- package/dist/dev/test/control-flow/for.test.js +58 -42
- package/dist/dev/test/control-flow/for.test.js.map +1 -1
- package/dist/dev/test/control-flow/match.test.js +15 -17
- package/dist/dev/test/control-flow/match.test.js.map +1 -1
- package/dist/dev/test/control-flow/show.test.js +5 -8
- package/dist/dev/test/control-flow/show.test.js.map +1 -1
- package/dist/dev/test/lazy-isempty.test.js +29 -31
- package/dist/dev/test/lazy-isempty.test.js.map +1 -1
- package/dist/dev/test/name-policy.test.js +2 -3
- package/dist/dev/test/name-policy.test.js.map +1 -1
- package/dist/dev/test/node.test.js +80 -0
- package/dist/dev/test/node.test.js.map +1 -0
- package/dist/dev/test/output-e2e.test.js +194 -0
- package/dist/dev/test/output-e2e.test.js.map +1 -0
- package/dist/dev/test/reactivity/circular-reactives.test.js +9 -9
- package/dist/dev/test/reactivity/circular-reactives.test.js.map +1 -1
- package/dist/dev/test/reactivity/cleanup.test.js +5 -6
- package/dist/dev/test/reactivity/cleanup.test.js.map +1 -1
- package/dist/dev/test/reactivity/ref-rendering.test.js +15 -15
- package/dist/dev/test/reactivity/ref-rendering.test.js.map +1 -1
- package/dist/dev/test/reactivity/test.test.js +18 -18
- package/dist/dev/test/reactivity/test.test.js.map +1 -1
- package/dist/dev/test/rendering/basic.test.js +18 -19
- package/dist/dev/test/rendering/basic.test.js.map +1 -1
- package/dist/dev/test/rendering/code.test.js +2 -3
- package/dist/dev/test/rendering/code.test.js.map +1 -1
- package/dist/dev/test/rendering/formatting.test.js +115 -121
- package/dist/dev/test/rendering/formatting.test.js.map +1 -1
- package/dist/dev/test/rendering/indent.test.js +23 -24
- package/dist/dev/test/rendering/indent.test.js.map +1 -1
- package/dist/dev/test/rendering/memoization.test.js +9 -5
- package/dist/dev/test/rendering/memoization.test.js.map +1 -1
- package/dist/dev/test/rendering/print-render-stack.test.js +20 -21
- package/dist/dev/test/rendering/print-render-stack.test.js.map +1 -1
- package/dist/dev/test/rendering/refkeys.test.js +1 -2
- package/dist/dev/test/rendering/refkeys.test.js.map +1 -1
- package/dist/dev/test/rendering/render-output-diagnostics.test.js +102 -0
- package/dist/dev/test/rendering/render-output-diagnostics.test.js.map +1 -0
- package/dist/dev/test/runtime.test.js +385 -0
- package/dist/dev/test/runtime.test.js.map +1 -0
- package/dist/dev/test/stc.test.js +0 -1
- package/dist/dev/test/stc.test.js.map +1 -1
- package/dist/dev/test/tree-test-utils.js +16 -0
- package/dist/dev/test/tree-test-utils.js.map +1 -0
- package/dist/dev/test/utils.test.js +34 -33
- package/dist/dev/test/utils.test.js.map +1 -1
- package/dist/dev/test/vitest.setup.js +2 -0
- package/dist/dev/test/vitest.setup.js.map +1 -0
- package/dist/dev/testing/devtools-utils.js +1 -1
- package/dist/dev/testing/devtools-utils.js.map +1 -1
- package/dist/dev/testing/extend-expect.js +30 -34
- package/dist/dev/testing/extend-expect.js.map +1 -1
- package/dist/dev/testing/render.js +7 -17
- package/dist/dev/testing/render.js.map +1 -1
- package/dist/devtools/index.html +17 -17
- package/dist/src/components/AccessExpression.test.d.ts +1 -1
- package/dist/src/components/AccessExpression.test.d.ts.map +1 -1
- package/dist/src/components/AccessExpression.test.js +5 -13
- package/dist/src/components/AccessExpression.test.js.map +1 -1
- package/dist/src/components/Output.d.ts +1 -1
- package/dist/src/components/Output.d.ts.map +1 -1
- package/dist/src/components/Output.js +2 -1
- package/dist/src/components/Output.js.map +1 -1
- package/dist/src/components/ReferenceOrContent.d.ts +1 -1
- package/dist/src/components/ReferenceOrContent.d.ts.map +1 -1
- package/dist/src/components/SourceFile.d.ts +1 -1
- package/dist/src/components/SourceFile.d.ts.map +1 -1
- package/dist/src/components/SourceFile.js.map +1 -1
- package/dist/src/content-slot.test.d.ts +1 -1
- package/dist/src/content-slot.test.d.ts.map +1 -1
- package/dist/src/content-slot.test.js +8 -10
- package/dist/src/content-slot.test.js.map +1 -1
- package/dist/src/context/format-options.d.ts +1 -1
- package/dist/src/context/format-options.d.ts.map +1 -1
- package/dist/src/context.d.ts +9 -1
- package/dist/src/context.d.ts.map +1 -1
- package/dist/src/context.js +30 -3
- package/dist/src/context.js.map +1 -1
- package/dist/src/debug/diagnostics.test.js +1 -1
- package/dist/src/debug/diagnostics.test.js.map +1 -1
- package/dist/src/debug/effects.test.js +1 -1
- package/dist/src/debug/effects.test.js.map +1 -1
- package/dist/src/debug/file-streaming.d.ts +22 -0
- package/dist/src/debug/file-streaming.d.ts.map +1 -0
- package/dist/src/debug/file-streaming.js +103 -0
- package/dist/src/debug/file-streaming.js.map +1 -0
- package/dist/src/debug/files.test.js +4 -5
- package/dist/src/debug/files.test.js.map +1 -1
- package/dist/src/debug/index.d.ts +5 -7
- package/dist/src/debug/index.d.ts.map +1 -1
- package/dist/src/debug/index.js +4 -6
- package/dist/src/debug/index.js.map +1 -1
- package/dist/src/debug/message-format.test.js +16 -18
- package/dist/src/debug/message-format.test.js.map +1 -1
- package/dist/src/debug/render-tree-orphans.test.js +8 -18
- package/dist/src/debug/render-tree-orphans.test.js.map +1 -1
- package/dist/src/debug/render.d.ts +71 -21
- package/dist/src/debug/render.d.ts.map +1 -1
- package/dist/src/debug/render.js +529 -352
- package/dist/src/debug/render.js.map +1 -1
- package/dist/src/debug/render.test.js +137 -74
- package/dist/src/debug/render.test.js.map +1 -1
- package/dist/src/debug/trace-writer.d.ts +6 -1
- package/dist/src/debug/trace-writer.d.ts.map +1 -1
- package/dist/src/debug/trace-writer.js +127 -15
- package/dist/src/debug/trace-writer.js.map +1 -1
- package/dist/src/debug/trace.d.ts +0 -36
- package/dist/src/debug/trace.d.ts.map +1 -1
- package/dist/src/debug/trace.js +0 -36
- package/dist/src/debug/trace.js.map +1 -1
- package/dist/src/devtools/devtools-protocol.d.ts +34 -1
- package/dist/src/devtools/devtools-protocol.d.ts.map +1 -1
- package/dist/src/devtools/devtools-server.d.ts.map +1 -1
- package/dist/src/devtools/devtools-server.js +55 -32
- package/dist/src/devtools/devtools-server.js.map +1 -1
- package/dist/src/devtools-entry.browser.d.ts +1 -1
- package/dist/src/devtools-entry.browser.d.ts.map +1 -1
- package/dist/src/devtools-entry.browser.js.map +1 -1
- package/dist/src/devtools-entry.d.ts +1 -1
- package/dist/src/devtools-entry.d.ts.map +1 -1
- package/dist/src/devtools-entry.js.map +1 -1
- package/dist/src/diagnostics.d.ts +4 -0
- package/dist/src/diagnostics.d.ts.map +1 -1
- package/dist/src/diagnostics.js +19 -1
- package/dist/src/diagnostics.js.map +1 -1
- package/dist/src/index.d.ts +5 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +5 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/jsx-runtime.d.ts +13 -4
- package/dist/src/jsx-runtime.d.ts.map +1 -1
- package/dist/src/jsx-runtime.js +14 -8
- package/dist/src/jsx-runtime.js.map +1 -1
- package/dist/src/output-types.d.ts +40 -0
- package/dist/src/output-types.d.ts.map +1 -0
- package/dist/src/output-types.js +2 -0
- package/dist/src/output-types.js.map +1 -0
- package/dist/src/reactivity.d.ts +49 -18
- package/dist/src/reactivity.d.ts.map +1 -1
- package/dist/src/reactivity.js +155 -13
- package/dist/src/reactivity.js.map +1 -1
- package/dist/src/render/get-string-width.d.ts +19 -0
- package/dist/src/render/get-string-width.d.ts.map +1 -0
- package/dist/src/render/get-string-width.js +61 -0
- package/dist/src/render/get-string-width.js.map +1 -0
- package/dist/src/render/index.d.ts +2 -0
- package/dist/src/render/index.d.ts.map +1 -0
- package/dist/src/render/index.js +2 -0
- package/dist/src/render/index.js.map +1 -0
- package/dist/src/render/node-context.d.ts +5 -0
- package/dist/src/render/node-context.d.ts.map +1 -0
- package/dist/src/render/node-context.js +7 -0
- package/dist/src/render/node-context.js.map +1 -0
- package/dist/src/render/node.d.ts +146 -0
- package/dist/src/render/node.d.ts.map +1 -0
- package/dist/src/render/node.js +386 -0
- package/dist/src/render/node.js.map +1 -0
- package/dist/src/render/printer-support.d.ts +50 -0
- package/dist/src/render/printer-support.d.ts.map +1 -0
- package/dist/src/render/printer-support.js +180 -0
- package/dist/src/render/printer-support.js.map +1 -0
- package/dist/src/render/printer.d.ts +35 -0
- package/dist/src/render/printer.d.ts.map +1 -0
- package/dist/src/render/printer.js +797 -0
- package/dist/src/render/printer.js.map +1 -0
- package/dist/src/render-error.d.ts +4 -0
- package/dist/src/render-error.d.ts.map +1 -0
- package/dist/src/render-error.js +79 -0
- package/dist/src/render-error.js.map +1 -0
- package/dist/src/render-output.d.ts +42 -0
- package/dist/src/render-output.d.ts.map +1 -0
- package/dist/src/render-output.js +209 -0
- package/dist/src/render-output.js.map +1 -0
- package/dist/src/runtime/component.d.ts +2 -2
- package/dist/src/runtime/component.d.ts.map +1 -1
- package/dist/src/runtime/create-intrinsic.d.ts +28 -0
- package/dist/src/runtime/create-intrinsic.d.ts.map +1 -0
- package/dist/src/runtime/create-intrinsic.js +53 -0
- package/dist/src/runtime/create-intrinsic.js.map +1 -0
- package/dist/src/runtime/fragment.d.ts +16 -0
- package/dist/src/runtime/fragment.d.ts.map +1 -0
- package/dist/src/runtime/fragment.js +21 -0
- package/dist/src/runtime/fragment.js.map +1 -0
- package/dist/src/runtime/index.d.ts +12 -0
- package/dist/src/runtime/index.d.ts.map +1 -0
- package/dist/src/runtime/index.js +13 -0
- package/dist/src/runtime/index.js.map +1 -0
- package/dist/src/runtime/insert.d.ts +29 -0
- package/dist/src/runtime/insert.d.ts.map +1 -0
- package/dist/src/runtime/insert.js +453 -0
- package/dist/src/runtime/insert.js.map +1 -0
- package/dist/src/runtime/intrinsic.d.ts +12 -29
- package/dist/src/runtime/intrinsic.d.ts.map +1 -1
- package/dist/src/runtime/intrinsic.js +1 -11
- package/dist/src/runtime/intrinsic.js.map +1 -1
- package/dist/src/scheduler.d.ts.map +1 -1
- package/dist/src/scheduler.js +38 -14
- package/dist/src/scheduler.js.map +1 -1
- package/dist/src/stc.d.ts.map +1 -1
- package/dist/src/stc.js +2 -0
- package/dist/src/stc.js.map +1 -1
- package/dist/src/sti.d.ts +7 -6
- package/dist/src/sti.d.ts.map +1 -1
- package/dist/src/sti.js +1 -1
- package/dist/src/sti.js.map +1 -1
- package/dist/src/symbols/symbol-slot.test.js +5 -5
- package/dist/src/symbols/symbol-slot.test.js.map +1 -1
- package/dist/src/test-render.d.ts +31 -0
- package/dist/src/test-render.d.ts.map +1 -0
- package/dist/src/test-render.js +78 -0
- package/dist/src/test-render.js.map +1 -0
- package/dist/src/utils.d.ts +1 -1
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/src/utils.js +40 -28
- package/dist/src/utils.js.map +1 -1
- package/dist/src/write-output.d.ts +1 -1
- package/dist/src/write-output.d.ts.map +1 -1
- package/dist/test/babel-e2e.test.d.ts +13 -0
- package/dist/test/babel-e2e.test.d.ts.map +1 -0
- package/dist/test/babel-e2e.test.js +218 -0
- package/dist/test/babel-e2e.test.js.map +1 -0
- package/dist/test/children.test.js +5 -7
- package/dist/test/children.test.js.map +1 -1
- package/dist/test/components/append-file.test.d.ts +1 -1
- package/dist/test/components/append-file.test.d.ts.map +1 -1
- package/dist/test/components/append-file.test.js +0 -1
- package/dist/test/components/append-file.test.js.map +1 -1
- package/dist/test/components/block.test.d.ts +1 -1
- package/dist/test/components/block.test.d.ts.map +1 -1
- package/dist/test/components/block.test.js +4 -6
- package/dist/test/components/block.test.js.map +1 -1
- package/dist/test/components/copy-file.test.d.ts +1 -1
- package/dist/test/components/copy-file.test.d.ts.map +1 -1
- package/dist/test/components/copy-file.test.js +1 -2
- package/dist/test/components/copy-file.test.js.map +1 -1
- package/dist/test/components/declaration.test.js +2 -2
- package/dist/test/components/declaration.test.js.map +1 -1
- package/dist/test/components/list.test.d.ts +1 -1
- package/dist/test/components/list.test.d.ts.map +1 -1
- package/dist/test/components/list.test.js +20 -22
- package/dist/test/components/list.test.js.map +1 -1
- package/dist/test/components/prose.test.d.ts +1 -1
- package/dist/test/components/prose.test.d.ts.map +1 -1
- package/dist/test/components/prose.test.js +0 -1
- package/dist/test/components/prose.test.js.map +1 -1
- package/dist/test/components/reference-or-content.test.js +8 -9
- package/dist/test/components/reference-or-content.test.js.map +1 -1
- package/dist/test/components/source-file.test.d.ts +1 -1
- package/dist/test/components/source-file.test.d.ts.map +1 -1
- package/dist/test/components/source-file.test.js +5 -4
- package/dist/test/components/source-file.test.js.map +1 -1
- package/dist/test/components/template-file.test.d.ts +1 -1
- package/dist/test/components/template-file.test.d.ts.map +1 -1
- package/dist/test/components/template-file.test.js +0 -1
- package/dist/test/components/template-file.test.js.map +1 -1
- package/dist/test/components/update-file.test.d.ts +1 -1
- package/dist/test/components/update-file.test.d.ts.map +1 -1
- package/dist/test/components/update-file.test.js +1 -2
- package/dist/test/components/update-file.test.js.map +1 -1
- package/dist/test/components/wrap.test.d.ts +1 -1
- package/dist/test/components/wrap.test.d.ts.map +1 -1
- package/dist/test/components/wrap.test.js +3 -5
- package/dist/test/components/wrap.test.js.map +1 -1
- package/dist/test/control-flow/for.test.d.ts +1 -1
- package/dist/test/control-flow/for.test.d.ts.map +1 -1
- package/dist/test/control-flow/for.test.js +40 -24
- package/dist/test/control-flow/for.test.js.map +1 -1
- package/dist/test/control-flow/match.test.d.ts +1 -1
- package/dist/test/control-flow/match.test.d.ts.map +1 -1
- package/dist/test/control-flow/match.test.js +4 -6
- package/dist/test/control-flow/match.test.js.map +1 -1
- package/dist/test/control-flow/show.test.d.ts +1 -1
- package/dist/test/control-flow/show.test.d.ts.map +1 -1
- package/dist/test/control-flow/show.test.js +3 -6
- package/dist/test/control-flow/show.test.js.map +1 -1
- package/dist/test/lazy-isempty.test.d.ts +1 -1
- package/dist/test/lazy-isempty.test.d.ts.map +1 -1
- package/dist/test/lazy-isempty.test.js +16 -18
- package/dist/test/lazy-isempty.test.js.map +1 -1
- package/dist/test/name-policy.test.d.ts +1 -1
- package/dist/test/name-policy.test.d.ts.map +1 -1
- package/dist/test/name-policy.test.js +0 -1
- package/dist/test/name-policy.test.js.map +1 -1
- package/dist/test/node.test.d.ts +2 -0
- package/dist/test/node.test.d.ts.map +1 -0
- package/dist/test/node.test.js +80 -0
- package/dist/test/node.test.js.map +1 -0
- package/dist/test/output-e2e.test.d.ts +13 -0
- package/dist/test/output-e2e.test.d.ts.map +1 -0
- package/dist/test/output-e2e.test.js +194 -0
- package/dist/test/output-e2e.test.js.map +1 -0
- package/dist/test/reactivity/circular-reactives.test.js +6 -6
- package/dist/test/reactivity/circular-reactives.test.js.map +1 -1
- package/dist/test/reactivity/cleanup.test.js +2 -3
- package/dist/test/reactivity/cleanup.test.js.map +1 -1
- package/dist/test/reactivity/ref-rendering.test.js +15 -15
- package/dist/test/reactivity/ref-rendering.test.js.map +1 -1
- package/dist/test/reactivity/test.test.js +15 -15
- package/dist/test/reactivity/test.test.js.map +1 -1
- package/dist/test/rendering/basic.test.d.ts +1 -1
- package/dist/test/rendering/basic.test.d.ts.map +1 -1
- package/dist/test/rendering/basic.test.js +0 -1
- package/dist/test/rendering/basic.test.js.map +1 -1
- package/dist/test/rendering/code.test.d.ts +1 -1
- package/dist/test/rendering/code.test.d.ts.map +1 -1
- package/dist/test/rendering/code.test.js +0 -1
- package/dist/test/rendering/code.test.js.map +1 -1
- package/dist/test/rendering/formatting.test.d.ts +1 -1
- package/dist/test/rendering/formatting.test.d.ts.map +1 -1
- package/dist/test/rendering/formatting.test.js +17 -23
- package/dist/test/rendering/formatting.test.js.map +1 -1
- package/dist/test/rendering/indent.test.d.ts +1 -1
- package/dist/test/rendering/indent.test.d.ts.map +1 -1
- package/dist/test/rendering/indent.test.js +0 -1
- package/dist/test/rendering/indent.test.js.map +1 -1
- package/dist/test/rendering/memoization.test.js +7 -3
- package/dist/test/rendering/memoization.test.js.map +1 -1
- package/dist/test/rendering/print-render-stack.test.d.ts +1 -1
- package/dist/test/rendering/print-render-stack.test.d.ts.map +1 -1
- package/dist/test/rendering/print-render-stack.test.js +0 -1
- package/dist/test/rendering/print-render-stack.test.js.map +1 -1
- package/dist/test/rendering/refkeys.test.d.ts +1 -1
- package/dist/test/rendering/refkeys.test.d.ts.map +1 -1
- package/dist/test/rendering/refkeys.test.js +0 -1
- package/dist/test/rendering/refkeys.test.js.map +1 -1
- package/dist/test/rendering/render-output-diagnostics.test.d.ts +2 -0
- package/dist/test/rendering/render-output-diagnostics.test.d.ts.map +1 -0
- package/dist/test/rendering/render-output-diagnostics.test.js +82 -0
- package/dist/test/rendering/render-output-diagnostics.test.js.map +1 -0
- package/dist/test/runtime.test.d.ts +11 -0
- package/dist/test/runtime.test.d.ts.map +1 -0
- package/dist/test/runtime.test.js +385 -0
- package/dist/test/runtime.test.js.map +1 -0
- package/dist/test/stc.test.d.ts +1 -1
- package/dist/test/stc.test.d.ts.map +1 -1
- package/dist/test/stc.test.js +0 -1
- package/dist/test/stc.test.js.map +1 -1
- package/dist/test/tree-test-utils.d.ts +3 -0
- package/dist/test/tree-test-utils.d.ts.map +1 -0
- package/dist/test/tree-test-utils.js +16 -0
- package/dist/test/tree-test-utils.js.map +1 -0
- package/dist/test/utils.test.d.ts +1 -1
- package/dist/test/utils.test.d.ts.map +1 -1
- package/dist/test/utils.test.js +12 -11
- package/dist/test/utils.test.js.map +1 -1
- package/dist/test/vitest.setup.d.ts +2 -0
- package/dist/test/vitest.setup.d.ts.map +1 -0
- package/dist/test/vitest.setup.js +2 -0
- package/dist/test/vitest.setup.js.map +1 -0
- package/dist/testing/devtools-utils.d.ts.map +1 -1
- package/dist/testing/devtools-utils.js +1 -1
- package/dist/testing/devtools-utils.js.map +1 -1
- package/dist/testing/extend-expect.d.ts.map +1 -1
- package/dist/testing/extend-expect.js +30 -34
- package/dist/testing/extend-expect.js.map +1 -1
- package/dist/testing/render.d.ts +7 -9
- package/dist/testing/render.d.ts.map +1 -1
- package/dist/testing/render.js +7 -17
- package/dist/testing/render.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/docs/api/components/Output.md +0 -3
- package/docs/api/components/SourceFile.md +0 -3
- package/docs/api/functions/createComment.md +18 -0
- package/docs/api/functions/createElement.md +19 -0
- package/docs/api/functions/createFragment.md +17 -0
- package/docs/api/functions/createTextNode.md +18 -0
- package/docs/api/functions/emitDiagnosticForTree.md +19 -0
- package/docs/api/functions/ensureIsEmpty.md +1 -1
- package/docs/api/functions/getContextForNode.md +18 -0
- package/docs/api/functions/getContextForRenderNode.md +4 -4
- package/docs/api/functions/getDiagnosticsForTree.md +7 -5
- package/docs/api/functions/getRegisteredDiagnosticsForTree.md +18 -0
- package/docs/api/functions/index.md +17 -12
- package/docs/api/functions/isCustomContext.md +4 -4
- package/docs/api/functions/notifyContentState.md +6 -0
- package/docs/api/functions/printTree.md +6 -16
- package/docs/api/functions/registerDiagnosticsForTree.md +19 -0
- package/docs/api/functions/render.md +1 -2
- package/docs/api/functions/renderAsync.md +1 -2
- package/docs/api/functions/renderTree.md +8 -5
- package/docs/api/functions/reportDiagnosticsForTree.md +18 -0
- package/docs/api/functions/runInContext.md +28 -0
- package/docs/api/functions/sourceFilesForTree.md +6 -16
- package/docs/api/index.md +3 -3
- package/docs/api/testing/functions/index.md +1 -1
- package/docs/api/testing/functions/renderToString.md +1 -1
- package/docs/api/types/AlloyNode.md +22 -0
- package/docs/api/types/Child.md +1 -1
- package/docs/api/types/CommentNode.md +15 -0
- package/docs/api/types/Context.md +13 -15
- package/docs/api/types/ElementNode.md +18 -0
- package/docs/api/types/FragmentNode.md +12 -0
- package/docs/api/types/Insertable.md +7 -0
- package/docs/api/types/NodeType.md +5 -0
- package/docs/api/types/OutputDirectory.md +0 -50
- package/docs/api/types/PrintTreeOptions.md +0 -1
- package/docs/api/types/RenderTreeOptions.md +7 -0
- package/docs/api/types/StiComponentCreator.md +4 -4
- package/docs/api/types/StiSignature.md +1 -1
- package/docs/api/types/TextNode.md +16 -0
- package/docs/api/types/index.md +10 -28
- package/docs/api/variables/COMMENT_NODE.md +5 -0
- package/docs/api/variables/ELEMENT_NODE.md +11 -0
- package/docs/api/variables/FRAGMENT_NODE.md +5 -0
- package/docs/api/variables/TEXT_NODE.md +5 -0
- package/docs/api/variables/index.md +4 -2
- package/docs/formatting.md +1 -1
- package/docs/rendering.md +4 -4
- package/package.json +6 -6
- package/src/components/AccessExpression.test.tsx +5 -13
- package/src/components/Output.tsx +2 -1
- package/src/components/SourceFile.tsx +1 -1
- package/src/content-slot.test.tsx +8 -10
- package/src/context/format-options.ts +1 -1
- package/src/context.ts +37 -4
- package/src/debug/diagnostics.test.tsx +1 -1
- package/src/debug/effects.test.tsx +1 -1
- package/src/debug/file-streaming.ts +115 -0
- package/src/debug/files.test.tsx +15 -11
- package/src/debug/index.ts +11 -11
- package/src/debug/message-format.test.tsx +32 -19
- package/src/debug/render-tree-orphans.test.tsx +10 -19
- package/src/debug/render.test.tsx +206 -78
- package/src/debug/render.ts +642 -495
- package/src/debug/trace-writer.ts +168 -14
- package/src/debug/trace.ts +0 -20
- package/src/devtools/devtools-protocol.ts +43 -0
- package/src/devtools/devtools-server.ts +57 -32
- package/src/devtools-entry.browser.ts +5 -0
- package/src/devtools-entry.ts +5 -0
- package/src/diagnostics.ts +31 -0
- package/src/index.ts +66 -2
- package/src/jsx-runtime.ts +16 -14
- package/src/output-types.ts +47 -0
- package/src/reactivity.ts +186 -40
- package/src/render/get-string-width.ts +201 -0
- package/src/render/index.ts +1 -0
- package/src/render/node-context.ts +14 -0
- package/src/render/node.ts +442 -0
- package/src/render/printer-support.ts +209 -0
- package/src/render/printer.ts +817 -0
- package/src/render-error.ts +98 -0
- package/src/render-output.ts +243 -0
- package/src/runtime/component.ts +2 -2
- package/src/runtime/create-intrinsic.ts +56 -0
- package/src/runtime/fragment.ts +22 -0
- package/src/runtime/index.ts +12 -0
- package/src/runtime/insert.ts +569 -0
- package/src/runtime/intrinsic.ts +14 -70
- package/src/scheduler.ts +40 -25
- package/src/stc.ts +3 -0
- package/src/sti.ts +17 -20
- package/src/symbols/symbol-slot.test.tsx +5 -5
- package/src/test-render.ts +103 -0
- package/src/utils.tsx +55 -37
- package/src/write-output.ts +1 -1
- package/temp/api-testing.json +390 -14
- package/temp/api.json +4320 -4144
- package/test/babel-e2e.test.ts +224 -0
- package/test/children.test.tsx +4 -7
- package/test/components/append-file.test.tsx +0 -1
- package/test/components/block.test.tsx +4 -6
- package/test/components/copy-file.test.tsx +2 -2
- package/test/components/declaration.test.tsx +2 -2
- package/test/components/list.test.tsx +20 -29
- package/test/components/prose.test.tsx +0 -1
- package/test/components/reference-or-content.test.tsx +8 -9
- package/test/components/source-file.test.tsx +4 -4
- package/test/components/template-file.test.tsx +0 -1
- package/test/components/update-file.test.tsx +1 -2
- package/test/components/wrap.test.tsx +3 -5
- package/test/control-flow/for.test.tsx +39 -31
- package/test/control-flow/match.test.tsx +4 -6
- package/test/control-flow/show.test.tsx +3 -6
- package/test/lazy-isempty.test.tsx +17 -19
- package/test/name-policy.test.tsx +0 -1
- package/test/node.test.ts +90 -0
- package/test/output-e2e.test.ts +198 -0
- package/test/reactivity/circular-reactives.test.tsx +6 -6
- package/test/reactivity/cleanup.test.tsx +2 -3
- package/test/reactivity/ref-rendering.test.tsx +15 -15
- package/test/reactivity/test.test.tsx +14 -14
- package/test/rendering/basic.test.tsx +0 -1
- package/test/rendering/code.test.tsx +0 -1
- package/test/rendering/formatting.test.tsx +21 -29
- package/test/rendering/indent.test.tsx +0 -1
- package/test/rendering/memoization.test.tsx +7 -3
- package/test/rendering/print-render-stack.test.tsx +0 -1
- package/test/rendering/refkeys.test.tsx +0 -1
- package/test/rendering/render-output-diagnostics.test.tsx +120 -0
- package/test/runtime.test.ts +448 -0
- package/test/stc.test.tsx +0 -1
- package/test/tree-test-utils.ts +23 -0
- package/test/utils.test.tsx +10 -9
- package/test/vitest.setup.ts +1 -0
- package/testing/devtools-utils.ts +2 -0
- package/testing/extend-expect.ts +32 -47
- package/testing/render.ts +17 -21
- package/vitest.config.ts +3 -0
- package/dist/dev/src/print-hook.js +0 -10
- package/dist/dev/src/print-hook.js.map +0 -1
- package/dist/dev/src/render.js +0 -872
- package/dist/dev/src/render.js.map +0 -1
- package/dist/src/print-hook.d.ts +0 -14
- package/dist/src/print-hook.d.ts.map +0 -1
- package/dist/src/print-hook.js +0 -10
- package/dist/src/print-hook.js.map +0 -1
- package/dist/src/render.d.ts +0 -155
- package/dist/src/render.d.ts.map +0 -1
- package/dist/src/render.js +0 -872
- package/dist/src/render.js.map +0 -1
- package/docs/api/functions/createIntrinsic.md +0 -19
- package/docs/api/functions/createRenderTreeHook.md +0 -19
- package/docs/api/functions/getElementCache.md +0 -17
- package/docs/api/functions/isIntrinsicElement.md +0 -18
- package/docs/api/functions/isPrintHook.md +0 -18
- package/docs/api/types/AlignIntrinsicElement.md +0 -5
- package/docs/api/types/BrIntrinsicElement.md +0 -5
- package/docs/api/types/BreakParentIntrinsicElement.md +0 -5
- package/docs/api/types/DedentIntrinsicElement.md +0 -5
- package/docs/api/types/DedentToRootIntrinsicElement.md +0 -5
- package/docs/api/types/ElementCache.md +0 -5
- package/docs/api/types/ElementCacheKey.md +0 -5
- package/docs/api/types/FillIntrinsicElement.md +0 -5
- package/docs/api/types/GroupIntrinsicElement.md +0 -5
- package/docs/api/types/HardlineIntrinsicElement.md +0 -5
- package/docs/api/types/HbrIntrinsicElement.md +0 -5
- package/docs/api/types/IfBreakIntrinsicElement.md +0 -5
- package/docs/api/types/IndentIfBreakIntrinsicElement.md +0 -5
- package/docs/api/types/IndentIntrinsicElement.md +0 -5
- package/docs/api/types/IntrinsicElement.md +0 -5
- package/docs/api/types/IntrinsicElementBase.md +0 -9
- package/docs/api/types/LbrIntrinsicElement.md +0 -5
- package/docs/api/types/LineIntrinsicElement.md +0 -5
- package/docs/api/types/LineSuffixBoundaryIntrinsicElement.md +0 -5
- package/docs/api/types/LineSuffixIntrinsicElement.md +0 -5
- package/docs/api/types/LiterallineIntrinsicElement.md +0 -5
- package/docs/api/types/MarkAsRootIntrinsicElement.md +0 -5
- package/docs/api/types/PrintHook.md +0 -10
- package/docs/api/types/RenderedTextTree.md +0 -5
- package/docs/api/types/SbrIntrinsicElement.md +0 -5
- package/docs/api/types/SoftlineIntrinsicElement.md +0 -5
- package/docs/api/variables/intrinsicElementKey.md +0 -5
- package/docs/api/variables/printHookTag.md +0 -7
- package/src/print-hook.ts +0 -22
- package/src/render.ts +0 -1154
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["COMMENT_NODE","FRAGMENT_NODE","TEXT_NODE","CURSOR_PLACEHOLDER","getStringWidth","joinOut","makeAlign","makeIndent","MODE_BREAK","MODE_FLAT","rootIndent","textHasNewline","textWidth","trimOut","SYNTH","Symbol","isGroupBroken","el","_breakCount","data","shouldBreak","fits","next","restCommands","width","hasLineSuffix","groupModeMap","mustBeFlat","Number","POSITIVE_INFINITY","restIdx","length","cmds","out","dummyInd","ind","push","cmd","pop","mode","frame","isSynth","kind","parts","collectChildren","node","i","offset","items","hard","soft","c","lastChild","previousSibling","nodeType","nt","tn","text","expandMultilineText","ln","localName","broken","groupMode","groupId","flatNode","undefined","flatText","f","fillPartsCache","WeakMap","cached","get","firstChild","nextSibling","set","split","synthHardline","printNodeToString","root","options","printWidth","newLine","pos","shouldRemeasure","lineSuffix","handleFill","handleLine","literal","reverse","handleElement","formatted","pushChildrenReversed","NEGATIVE_INFINITY","type","widthOrString","count","string","handleGroup","handleIfBreak","handleIndentIfBreak","handleFillElement","id","m","pushChildrenReversedAtMode","rem","hasLS","negate","indArg","modeArg","content","whitespace","contentFlatCmd","contentBreakCmd","contentFits","whitespaceFlatCmd","whitespaceBreakCmd","secondContent","remainingCmd","firstAndSecondListFrame","firstAndSecondContentFits","value"],"sources":["../../../../src/render/printer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { debug, getRenderNodeId } from "./debug/index.js";
|
|
2
|
+
import { emitDiagnostic } from "./diagnostics.js";
|
|
3
|
+
import { getRenderStackSnapshot, printRenderStack } from "./render-stack.js";
|
|
4
|
+
const notifiedErrors = new WeakSet();
|
|
5
|
+
let lastRenderError = null;
|
|
6
|
+
function normalizeRenderError(error) {
|
|
7
|
+
if (error instanceof Error) {
|
|
8
|
+
return {
|
|
9
|
+
name: error.name || error.constructor?.name || "Error",
|
|
10
|
+
message: error.message || "",
|
|
11
|
+
stack: error.stack
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
if (error && typeof error === "object") {
|
|
15
|
+
const anyError = error;
|
|
16
|
+
return {
|
|
17
|
+
name: anyError.name || "Error",
|
|
18
|
+
message: anyError.message || String(error),
|
|
19
|
+
stack: anyError.stack
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
return {
|
|
23
|
+
name: "Error",
|
|
24
|
+
message: String(error)
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
export function notifyRenderError(error, collector) {
|
|
28
|
+
if (error && typeof error === "object") {
|
|
29
|
+
if (notifiedErrors.has(error)) return;
|
|
30
|
+
notifiedErrors.add(error);
|
|
31
|
+
}
|
|
32
|
+
if (lastRenderError) return;
|
|
33
|
+
const {
|
|
34
|
+
name,
|
|
35
|
+
message,
|
|
36
|
+
stack
|
|
37
|
+
} = normalizeRenderError(error);
|
|
38
|
+
const componentStack = getRenderStackSnapshot().map(entry => {
|
|
39
|
+
const renderNode = entry.context?.meta?.renderNode;
|
|
40
|
+
const renderNodeId = renderNode ? getRenderNodeId(renderNode) : undefined;
|
|
41
|
+
return {
|
|
42
|
+
name: entry.displayName,
|
|
43
|
+
props: entry.props,
|
|
44
|
+
renderNodeId,
|
|
45
|
+
source: entry.source
|
|
46
|
+
};
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
// Output to console
|
|
50
|
+
printRenderStack(error);
|
|
51
|
+
|
|
52
|
+
// Send to devtools if enabled
|
|
53
|
+
debug.render.error({
|
|
54
|
+
name,
|
|
55
|
+
message,
|
|
56
|
+
stack
|
|
57
|
+
}, componentStack);
|
|
58
|
+
|
|
59
|
+
// Store for diagnostics
|
|
60
|
+
lastRenderError = {
|
|
61
|
+
error: {
|
|
62
|
+
name,
|
|
63
|
+
message,
|
|
64
|
+
stack
|
|
65
|
+
},
|
|
66
|
+
componentStack
|
|
67
|
+
};
|
|
68
|
+
const lastEntry = componentStack.at(-1);
|
|
69
|
+
const diagnostic = {
|
|
70
|
+
severity: "error",
|
|
71
|
+
message: `${name}: ${message}`,
|
|
72
|
+
source: lastEntry?.source
|
|
73
|
+
};
|
|
74
|
+
if (collector) collector.emit(diagnostic);else emitDiagnostic(diagnostic);
|
|
75
|
+
}
|
|
76
|
+
export function resetRenderErrorState() {
|
|
77
|
+
lastRenderError = null;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=render-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["debug","getRenderNodeId","emitDiagnostic","getRenderStackSnapshot","printRenderStack","notifiedErrors","WeakSet","lastRenderError","normalizeRenderError","error","Error","name","constructor","message","stack","anyError","String","notifyRenderError","collector","has","add","componentStack","map","entry","renderNode","context","meta","renderNodeId","undefined","displayName","props","source","render","lastEntry","at","diagnostic","severity","emit","resetRenderErrorState"],"sources":["../../../src/render-error.ts"],"sourcesContent":[null],"mappings":"AAAA,SACEA,KAAK,EACLC,eAAe,QAEV,kBAAkB;AACzB,SACEC,cAAc,QAGT,kBAAkB;AACzB,SAASC,sBAAsB,EAAEC,gBAAgB,QAAQ,mBAAmB;AAE5E,MAAMC,cAAc,GAAG,IAAIC,OAAO,CAAS,CAAC;AAE5C,IAAIC,eASI,GAAG,IAAI;AAEf,SAASC,oBAAoBA,CAACC,KAAc,EAI1C;EACA,IAAIA,KAAK,YAAYC,KAAK,EAAE;IAC1B,OAAO;MACLC,IAAI,EAAEF,KAAK,CAACE,IAAI,IAAIF,KAAK,CAACG,WAAW,EAAED,IAAI,IAAI,OAAO;MACtDE,OAAO,EAAEJ,KAAK,CAACI,OAAO,IAAI,EAAE;MAC5BC,KAAK,EAAEL,KAAK,CAACK;IACf,CAAC;EACH;EACA,IAAIL,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IACtC,MAAMM,QAAQ,GAAGN,KAIhB;IACD,OAAO;MACLE,IAAI,EAAEI,QAAQ,CAACJ,IAAI,IAAI,OAAO;MAC9BE,OAAO,EAAEE,QAAQ,CAACF,OAAO,IAAIG,MAAM,CAACP,KAAK,CAAC;MAC1CK,KAAK,EAAEC,QAAQ,CAACD;IAClB,CAAC;EACH;EACA,OAAO;IACLH,IAAI,EAAE,OAAO;IACbE,OAAO,EAAEG,MAAM,CAACP,KAAK;EACvB,CAAC;AACH;AAEA,OAAO,SAASQ,iBAAiBA,CAC/BR,KAAc,EACdS,SAAgC,EAChC;EACA,IAAIT,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IACtC,IAAIJ,cAAc,CAACc,GAAG,CAACV,KAAK,CAAC,EAAE;IAC/BJ,cAAc,CAACe,GAAG,CAACX,KAAK,CAAC;EAC3B;EACA,IAAIF,eAAe,EAAE;EAErB,MAAM;IAAEI,IAAI;IAAEE,OAAO;IAAEC;EAAM,CAAC,GAAGN,oBAAoB,CAACC,KAAK,CAAC;EAC5D,MAAMY,cAAc,GAAGlB,sBAAsB,CAAC,CAAC,CAACmB,GAAG,CAAEC,KAAK,IAAK;IAC7D,MAAMC,UAAU,GAAGD,KAAK,CAACE,OAAO,EAAEC,IAAI,EAAEF,UAAU;IAClD,MAAMG,YAAY,GAAGH,UAAU,GAAGvB,eAAe,CAACuB,UAAU,CAAC,GAAGI,SAAS;IACzE,OAAO;MACLjB,IAAI,EAAEY,KAAK,CAACM,WAAW;MACvBC,KAAK,EAAEP,KAAK,CAACO,KAA4C;MACzDH,YAAY;MACZI,MAAM,EAAER,KAAK,CAACQ;IAChB,CAAC;EACH,CAAC,CAAC;;EAEF;EACA3B,gBAAgB,CAACK,KAAK,CAAC;;EAEvB;EACAT,KAAK,CAACgC,MAAM,CAACvB,KAAK,CAAC;IAAEE,IAAI;IAAEE,OAAO;IAAEC;EAAM,CAAC,EAAEO,cAAc,CAAC;;EAE5D;EACAd,eAAe,GAAG;IAAEE,KAAK,EAAE;MAAEE,IAAI;MAAEE,OAAO;MAAEC;IAAM,CAAC;IAAEO;EAAe,CAAC;EACrE,MAAMY,SAAS,GAAGZ,cAAc,CAACa,EAAE,CAAC,CAAC,CAAC,CAAC;EACvC,MAAMC,UAA2B,GAAG;IAClCC,QAAQ,EAAE,OAAO;IACjBvB,OAAO,EAAE,GAAGF,IAAI,KAAKE,OAAO,EAAE;IAC9BkB,MAAM,EAAEE,SAAS,EAAEF;EACrB,CAAC;EACD,IAAIb,SAAS,EAAEA,SAAS,CAACmB,IAAI,CAACF,UAAU,CAAC,CAAC,KACrCjC,cAAc,CAACiC,UAAU,CAAC;AACjC;AAEA,OAAO,SAASG,qBAAqBA,CAAA,EAAG;EACtC/B,eAAe,GAAG,IAAI;AACxB","ignoreList":[]}
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Top-level render entry points.
|
|
3
|
+
*
|
|
4
|
+
* `render` and `renderAsync` take a `Children` tree, insert it into a
|
|
5
|
+
* fresh root `ElementNode`, flush the scheduler, and walk the result
|
|
6
|
+
* to assemble an {@link OutputDirectory}. The walker recognizes
|
|
7
|
+
* marker `localName`s (`alloy:directory`, `alloy:source-file`,
|
|
8
|
+
* `alloy:copy-file`) stamped on the AlloyNode by `<SourceDirectory>`,
|
|
9
|
+
* `<SourceFile>`, and `<CopyFile>` (see `components/`), reading
|
|
10
|
+
* each marker's owning Context for path/filetype metadata.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
import { debug, isDevtoolsEnabled } from "./debug/index.js";
|
|
14
|
+
import { closeTrace } from "./debug/trace-writer.js";
|
|
15
|
+
import { isTraceEnabled } from "./debug/trace.js";
|
|
16
|
+
import { attachDiagnosticsCollector, DiagnosticsCollector, emitDiagnosticForTree, registerDiagnosticsForTree, reportDiagnosticsForTree } from "./diagnostics.js";
|
|
17
|
+
import { root as createRoot } from "./reactivity.js";
|
|
18
|
+
import { notifyRenderError, resetRenderErrorState } from "./render-error.js";
|
|
19
|
+
import { getContextForNode } from "./render/node-context.js";
|
|
20
|
+
import { createElement, ElementNode } from "./render/node.js";
|
|
21
|
+
import { printNodeToString } from "./render/printer.js";
|
|
22
|
+
import { insert } from "./runtime/insert.js";
|
|
23
|
+
import { flushJobs, flushJobsAsync, waitForSignal } from "./scheduler.js";
|
|
24
|
+
|
|
25
|
+
/** Render a component tree to an {@link OutputDirectory}. */
|
|
26
|
+
export function render(children, options) {
|
|
27
|
+
debug.assertReadyForSyncRender();
|
|
28
|
+
resetRenderErrorState();
|
|
29
|
+
const root = createElement("alloy:root");
|
|
30
|
+
const collector = new DiagnosticsCollector();
|
|
31
|
+
registerDiagnosticsForTree(root, collector);
|
|
32
|
+
debug.render.initialize(root);
|
|
33
|
+
let output;
|
|
34
|
+
try {
|
|
35
|
+
createRoot(() => {
|
|
36
|
+
attachDiagnosticsCollector(collector);
|
|
37
|
+
insert(root, children);
|
|
38
|
+
});
|
|
39
|
+
flushJobs();
|
|
40
|
+
output = sourceFilesForTree(root, options);
|
|
41
|
+
} catch (error) {
|
|
42
|
+
notifyRenderError(error, collector);
|
|
43
|
+
throw error;
|
|
44
|
+
} finally {
|
|
45
|
+
try {
|
|
46
|
+
reportDiagnosticsForTree(root);
|
|
47
|
+
} finally {
|
|
48
|
+
try {
|
|
49
|
+
debug.render.complete();
|
|
50
|
+
} finally {
|
|
51
|
+
// Close trace DB only if devtools is NOT running. With devtools active the
|
|
52
|
+
// DB must remain open for post-render reactive updates streamed to clients.
|
|
53
|
+
if (isTraceEnabled() && !isDevtoolsEnabled()) closeTrace();
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
if (isDevtoolsEnabled()) {
|
|
58
|
+
void waitForSignal();
|
|
59
|
+
}
|
|
60
|
+
return output;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Async variant — awaits any scheduled async jobs (e.g. produced by
|
|
65
|
+
* `<Output>` consumers that read external data) before walking the
|
|
66
|
+
* tree.
|
|
67
|
+
*/
|
|
68
|
+
export async function renderAsync(children, options) {
|
|
69
|
+
await debug.prepare();
|
|
70
|
+
resetRenderErrorState();
|
|
71
|
+
const root = createElement("alloy:root");
|
|
72
|
+
const collector = new DiagnosticsCollector();
|
|
73
|
+
registerDiagnosticsForTree(root, collector);
|
|
74
|
+
debug.render.initialize(root);
|
|
75
|
+
let output;
|
|
76
|
+
try {
|
|
77
|
+
createRoot(() => {
|
|
78
|
+
attachDiagnosticsCollector(collector);
|
|
79
|
+
insert(root, children);
|
|
80
|
+
});
|
|
81
|
+
await flushJobsAsync();
|
|
82
|
+
output = sourceFilesForTree(root, options);
|
|
83
|
+
} catch (error) {
|
|
84
|
+
notifyRenderError(error, collector);
|
|
85
|
+
throw error;
|
|
86
|
+
} finally {
|
|
87
|
+
try {
|
|
88
|
+
reportDiagnosticsForTree(root);
|
|
89
|
+
} finally {
|
|
90
|
+
try {
|
|
91
|
+
debug.render.complete();
|
|
92
|
+
} finally {
|
|
93
|
+
if (isTraceEnabled() && !isDevtoolsEnabled()) closeTrace();
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
return output;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Walk the AlloyNode tree, collecting `<SourceDirectory>`,
|
|
102
|
+
* `<SourceFile>`, and `<CopyFile>` markers into an
|
|
103
|
+
* {@link OutputDirectory}.
|
|
104
|
+
*/
|
|
105
|
+
export function sourceFilesForTree(rootNode, opts) {
|
|
106
|
+
let result;
|
|
107
|
+
walk(rootNode, undefined);
|
|
108
|
+
if (!result) {
|
|
109
|
+
emitDiagnosticForTree(rootNode, {
|
|
110
|
+
severity: "error",
|
|
111
|
+
message: "No root directory found. Make sure you are using the Output component."
|
|
112
|
+
});
|
|
113
|
+
return {
|
|
114
|
+
kind: "directory",
|
|
115
|
+
path: "",
|
|
116
|
+
contents: []
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
return result;
|
|
120
|
+
function walk(node, cwd) {
|
|
121
|
+
if (node instanceof ElementNode) {
|
|
122
|
+
const ctx = getContextForNode(node);
|
|
123
|
+
if (node.localName === "alloy:directory") {
|
|
124
|
+
const dirMeta = ctx?.meta?.directory;
|
|
125
|
+
const dir = {
|
|
126
|
+
kind: "directory",
|
|
127
|
+
path: dirMeta?.path ?? "",
|
|
128
|
+
contents: []
|
|
129
|
+
};
|
|
130
|
+
if (cwd) cwd.contents.push(dir);else result = dir;
|
|
131
|
+
for (let c = node.firstChild; c !== null; c = c.nextSibling) {
|
|
132
|
+
walk(c, dir);
|
|
133
|
+
}
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
if (node.localName === "alloy:source-file") {
|
|
137
|
+
const sf = ctx?.meta?.sourceFile;
|
|
138
|
+
if (sf) {
|
|
139
|
+
if (!cwd) {
|
|
140
|
+
throw new Error("Source file doesn't have parent directory. Make sure you have used the Output component.");
|
|
141
|
+
}
|
|
142
|
+
const printOpts = ctx.meta.printOptions;
|
|
143
|
+
const file = {
|
|
144
|
+
kind: "file",
|
|
145
|
+
path: sf.path,
|
|
146
|
+
filetype: sf.filetype,
|
|
147
|
+
contents: printNode(node, {
|
|
148
|
+
printWidth: opts?.printWidth ?? printOpts?.printWidth,
|
|
149
|
+
tabWidth: opts?.tabWidth ?? printOpts?.tabWidth,
|
|
150
|
+
useTabs: opts?.useTabs ?? printOpts?.useTabs,
|
|
151
|
+
insertFinalNewLine: opts?.insertFinalNewLine ?? printOpts?.insertFinalNewLine ?? true
|
|
152
|
+
})
|
|
153
|
+
};
|
|
154
|
+
cwd.contents.push(file);
|
|
155
|
+
debug.files.updated({
|
|
156
|
+
path: sf.path,
|
|
157
|
+
filetype: sf.filetype,
|
|
158
|
+
contents: file.contents
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
if (node.localName === "alloy:copy-file") {
|
|
164
|
+
const cf = ctx?.meta?.copyFile;
|
|
165
|
+
if (cf) {
|
|
166
|
+
if (!cwd) {
|
|
167
|
+
throw new Error("Copy file doesn't have parent directory. Make sure you have used the Output component.");
|
|
168
|
+
}
|
|
169
|
+
const file = {
|
|
170
|
+
kind: "file",
|
|
171
|
+
path: cf.path,
|
|
172
|
+
sourcePath: cf.sourcePath
|
|
173
|
+
};
|
|
174
|
+
cwd.contents.push(file);
|
|
175
|
+
}
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
for (let c = node.firstChild; c !== null; c = c.nextSibling) {
|
|
180
|
+
walk(c, cwd);
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
export { getContextForNode } from "./render/node-context.js";
|
|
185
|
+
|
|
186
|
+
/**
|
|
187
|
+
* @deprecated Use {@link getContextForNode}. Render tree nodes are now
|
|
188
|
+
* represented by AlloyNode objects directly.
|
|
189
|
+
*/
|
|
190
|
+
export function getContextForRenderNode(node) {
|
|
191
|
+
return getContextForNode(node);
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
/**
|
|
195
|
+
* Print an AlloyNode subtree with the given options. Used internally
|
|
196
|
+
* by `sourceFilesForTree` to format each `<SourceFile>` body and
|
|
197
|
+
* exposed for testing helpers.
|
|
198
|
+
*/
|
|
199
|
+
export function printNode(node, opts) {
|
|
200
|
+
const merged = {
|
|
201
|
+
printWidth: opts?.printWidth ?? 80,
|
|
202
|
+
tabWidth: opts?.tabWidth ?? 2,
|
|
203
|
+
useTabs: opts?.useTabs ?? false
|
|
204
|
+
};
|
|
205
|
+
let formatted = printNodeToString(node, merged).formatted;
|
|
206
|
+
if (opts?.insertFinalNewLine && !formatted.endsWith("\n")) formatted += "\n";
|
|
207
|
+
return formatted;
|
|
208
|
+
}
|
|
209
|
+
//# sourceMappingURL=render-output.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["debug","isDevtoolsEnabled","closeTrace","isTraceEnabled","attachDiagnosticsCollector","DiagnosticsCollector","emitDiagnosticForTree","registerDiagnosticsForTree","reportDiagnosticsForTree","root","createRoot","notifyRenderError","resetRenderErrorState","getContextForNode","createElement","ElementNode","printNodeToString","insert","flushJobs","flushJobsAsync","waitForSignal","render","children","options","assertReadyForSyncRender","collector","initialize","output","sourceFilesForTree","error","complete","renderAsync","prepare","rootNode","opts","result","walk","undefined","severity","message","kind","path","contents","node","cwd","ctx","localName","dirMeta","meta","directory","dir","push","c","firstChild","nextSibling","sf","sourceFile","Error","printOpts","printOptions","file","filetype","printNode","printWidth","tabWidth","useTabs","insertFinalNewLine","files","updated","cf","copyFile","sourcePath","getContextForRenderNode","merged","formatted","endsWith"],"sources":["../../../src/render-output.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `createIntrinsic("name", props)` — runtime version.
|
|
3
|
+
*
|
|
4
|
+
* The babel-emitted compiled output of a JSX intrinsic such as
|
|
5
|
+
* `<group shouldBreak>{...}</group>` calls this with the tag name and
|
|
6
|
+
* props. It allocates an `ElementNode` whose `localName` is the
|
|
7
|
+
* intrinsic kind and stores the non-`children` props on `data`, then
|
|
8
|
+
* eagerly inserts the children via the polymorphic {@link insert}
|
|
9
|
+
* helper. The set of recognized localNames matches the cases handled
|
|
10
|
+
* by the direct printer (`group`, `indent`, `line`, `softline`, `hardline`,
|
|
11
|
+
* `ifBreak`, ...); unknown names pass through as transparent
|
|
12
|
+
* containers.
|
|
13
|
+
*
|
|
14
|
+
* Examples:
|
|
15
|
+
*
|
|
16
|
+
* <group shouldBreak={true}>...</group>
|
|
17
|
+
* ─→ createIntrinsic("group", { shouldBreak: true, children: [...] })
|
|
18
|
+
* ─→ ElementNode { localName: "group", data: { shouldBreak: true } }
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
import { createElement } from "../render/node.js";
|
|
22
|
+
import { insert } from "./insert.js";
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Create an intrinsic ElementNode and insert its children eagerly.
|
|
26
|
+
*/
|
|
27
|
+
export function createIntrinsic(name, props) {
|
|
28
|
+
let data;
|
|
29
|
+
let children;
|
|
30
|
+
let flatContents;
|
|
31
|
+
if (props !== undefined) {
|
|
32
|
+
for (const key in props) {
|
|
33
|
+
if (key === "children") {
|
|
34
|
+
children = props.children;
|
|
35
|
+
} else if (key === "flatContents" && name === "ifBreak") {
|
|
36
|
+
flatContents = props[key];
|
|
37
|
+
} else {
|
|
38
|
+
if (data === undefined) data = {};
|
|
39
|
+
data[key] = props[key];
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
if (flatContents !== undefined) {
|
|
44
|
+
const flatNode = createElement("alloy:if-break-flat");
|
|
45
|
+
insert(flatNode, flatContents);
|
|
46
|
+
if (data === undefined) data = {};
|
|
47
|
+
data.flatNode = flatNode;
|
|
48
|
+
}
|
|
49
|
+
const node = createElement(name, data);
|
|
50
|
+
if (children !== undefined) insert(node, children);
|
|
51
|
+
return node;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=create-intrinsic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createElement","insert","createIntrinsic","name","props","data","children","flatContents","undefined","key","flatNode","node"],"sources":["../../../../src/runtime/create-intrinsic.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,aAAa,QAA0B,mBAAmB;AAEnE,SAASC,MAAM,QAAQ,aAAa;;AAEpC;AACA;AACA;AACA,OAAO,SAASC,eAAeA,CAC7BC,IAAY,EACZC,KAAuC,EAC1B;EACb,IAAIC,IAAyC;EAC7C,IAAIC,QAA8B;EAClC,IAAIC,YAAkC;EACtC,IAAIH,KAAK,KAAKI,SAAS,EAAE;IACvB,KAAK,MAAMC,GAAG,IAAIL,KAAK,EAAE;MACvB,IAAIK,GAAG,KAAK,UAAU,EAAE;QACtBH,QAAQ,GAAGF,KAAK,CAACE,QAAQ;MAC3B,CAAC,MAAM,IAAIG,GAAG,KAAK,cAAc,IAAIN,IAAI,KAAK,SAAS,EAAE;QACvDI,YAAY,GAAGH,KAAK,CAACK,GAAG,CAAa;MACvC,CAAC,MAAM;QACL,IAAIJ,IAAI,KAAKG,SAAS,EAAEH,IAAI,GAAG,CAAC,CAAC;QACjCA,IAAI,CAACI,GAAG,CAAC,GAAGL,KAAK,CAACK,GAAG,CAAC;MACxB;IACF;EACF;EACA,IAAIF,YAAY,KAAKC,SAAS,EAAE;IAC9B,MAAME,QAAQ,GAAGV,aAAa,CAAC,qBAAqB,CAAC;IACrDC,MAAM,CAACS,QAAQ,EAAEH,YAAY,CAAC;IAC9B,IAAIF,IAAI,KAAKG,SAAS,EAAEH,IAAI,GAAG,CAAC,CAAC;IACjCA,IAAI,CAACK,QAAQ,GAAGA,QAAQ;EAC1B;EACA,MAAMC,IAAI,GAAGX,aAAa,CAACG,IAAI,EAAEE,IAAI,CAAC;EACtC,IAAIC,QAAQ,KAAKE,SAAS,EAAEP,MAAM,CAACU,IAAI,EAAEL,QAAQ,CAAC;EAClD,OAAOK,IAAI;AACb","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `Fragment` component.
|
|
3
|
+
*
|
|
4
|
+
* Compiles `<>...</>` into `createComponent(Fragment, { children: [...] })`.
|
|
5
|
+
* When invoked, returns a `FragmentNode` whose children are eagerly
|
|
6
|
+
* inserted via the polymorphic {@link insert}. `FragmentNode` has
|
|
7
|
+
* DocumentFragment splice-on-insert semantics — inserting a fragment
|
|
8
|
+
* into a parent moves its children into the parent and leaves the
|
|
9
|
+
* fragment empty.
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
import { createFragment } from "../render/node.js";
|
|
13
|
+
import { insert } from "./insert.js";
|
|
14
|
+
export function Fragment(props) {
|
|
15
|
+
const node = createFragment();
|
|
16
|
+
if (props.children !== undefined) {
|
|
17
|
+
insert(node, props.children);
|
|
18
|
+
}
|
|
19
|
+
return node;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=fragment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createFragment","insert","Fragment","props","node","children","undefined"],"sources":["../../../../src/runtime/fragment.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,cAAc,QAA2B,mBAAmB;AAErE,SAASC,MAAM,QAAQ,aAAa;AAEpC,OAAO,SAASC,QAAQA,CAACC,KAA8B,EAAgB;EACrE,MAAMC,IAAI,GAAGJ,cAAc,CAAC,CAAC;EAC7B,IAAIG,KAAK,CAACE,QAAQ,KAAKC,SAAS,EAAE;IAChCL,MAAM,CAACG,IAAI,EAAED,KAAK,CAACE,QAAQ,CAAC;EAC9B;EACA,OAAOD,IAAI;AACb","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* runtime — narrow surface used by JSX-compiled output and tests
|
|
3
|
+
* exercising the AlloyNode renderer directly.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
export { mergeProps } from "../props-combinators.js";
|
|
7
|
+
export { effect, memo } from "../reactivity.js";
|
|
8
|
+
export { render, renderAsync } from "../render-output.js";
|
|
9
|
+
export { createComponent } from "./component.js";
|
|
10
|
+
export { createIntrinsic } from "./create-intrinsic.js";
|
|
11
|
+
export { Fragment } from "./fragment.js";
|
|
12
|
+
export { insert } from "./insert.js";
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["mergeProps","effect","memo","render","renderAsync","createComponent","createIntrinsic","Fragment","insert"],"sources":["../../../../src/runtime/index.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA;AACA;AACA;;AAEA,SAASA,UAAU,QAAQ,yBAAyB;AACpD,SAASC,MAAM,EAAEC,IAAI,QAAQ,kBAAkB;AAC/C,SAASC,MAAM,EAAEC,WAAW,QAAQ,qBAAqB;AACzD,SAASC,eAAe,QAAQ,gBAAgB;AAChD,SAASC,eAAe,QAAQ,uBAAuB;AACvD,SAASC,QAAQ,QAAQ,eAAe;AACxC,SAASC,MAAM,QAAQ,aAAa","ignoreList":[]}
|