@alloy-js/core 0.23.0-dev.1 → 0.23.0-dev.11
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 +0 -22
- package/dist/devtools/index.html +80 -0
- package/dist/src/binder.d.ts +2 -0
- package/dist/src/binder.d.ts.map +1 -1
- package/dist/src/binder.js +60 -12
- package/dist/src/binder.js.map +1 -1
- package/dist/src/components/AccessExpression.d.ts +78 -0
- package/dist/src/components/AccessExpression.d.ts.map +1 -0
- package/dist/src/components/AccessExpression.js +218 -0
- package/dist/src/components/AccessExpression.js.map +1 -0
- package/dist/src/components/AccessExpression.test.d.ts +2 -0
- package/dist/src/components/AccessExpression.test.d.ts.map +1 -0
- package/dist/src/components/AccessExpression.test.js +137 -0
- package/dist/src/components/AccessExpression.test.js.map +1 -0
- package/dist/src/components/AppendFile.d.ts.map +1 -1
- package/dist/src/components/AppendFile.js +14 -3
- package/dist/src/components/AppendFile.js.map +1 -1
- package/dist/src/components/Block.js +1 -1
- package/dist/src/components/Block.js.map +1 -1
- package/dist/src/components/Declaration.d.ts.map +1 -1
- package/dist/src/components/Declaration.js +2 -1
- package/dist/src/components/Declaration.js.map +1 -1
- package/dist/src/components/For.d.ts.map +1 -1
- package/dist/src/components/For.js +1 -1
- package/dist/src/components/For.js.map +1 -1
- package/dist/src/components/List.d.ts.map +1 -1
- package/dist/src/components/List.js +1 -1
- package/dist/src/components/List.js.map +1 -1
- package/dist/src/components/Prose.js +2 -2
- package/dist/src/components/Prose.js.map +1 -1
- package/dist/src/components/Scope.d.ts.map +1 -1
- package/dist/src/components/Scope.js +6 -1
- package/dist/src/components/Scope.js.map +1 -1
- package/dist/src/components/SourceDirectory.d.ts.map +1 -1
- package/dist/src/components/SourceDirectory.js +1 -2
- package/dist/src/components/SourceDirectory.js.map +1 -1
- package/dist/src/components/Switch.d.ts.map +1 -1
- package/dist/src/components/Switch.js +1 -1
- package/dist/src/components/Switch.js.map +1 -1
- package/dist/src/components/TemplateFile.d.ts.map +1 -1
- package/dist/src/components/TemplateFile.js +18 -3
- package/dist/src/components/TemplateFile.js.map +1 -1
- package/dist/src/components/index.d.ts +1 -0
- package/dist/src/components/index.d.ts.map +1 -1
- package/dist/src/components/index.js +1 -0
- package/dist/src/components/index.js.map +1 -1
- package/dist/src/content-slot.d.ts.map +1 -1
- package/dist/src/content-slot.js +7 -6
- package/dist/src/content-slot.js.map +1 -1
- package/dist/src/context.d.ts.map +1 -1
- package/dist/src/context.js +10 -3
- package/dist/src/context.js.map +1 -1
- package/dist/src/debug/cli.d.ts +6 -0
- package/dist/src/debug/cli.d.ts.map +1 -0
- package/dist/src/{debug.js → debug/cli.js} +79 -82
- package/dist/src/debug/cli.js.map +1 -0
- package/dist/src/debug/diagnostics.test.d.ts +2 -0
- package/dist/src/debug/diagnostics.test.d.ts.map +1 -0
- package/dist/src/debug/diagnostics.test.js +46 -0
- package/dist/src/debug/diagnostics.test.js.map +1 -0
- package/dist/src/debug/effects.d.ts +81 -0
- package/dist/src/debug/effects.d.ts.map +1 -0
- package/dist/src/debug/effects.js +358 -0
- package/dist/src/debug/effects.js.map +1 -0
- package/dist/src/debug/effects.test.d.ts +2 -0
- package/dist/src/debug/effects.test.d.ts.map +1 -0
- package/dist/src/debug/effects.test.js +256 -0
- package/dist/src/debug/effects.test.js.map +1 -0
- package/dist/src/debug/files.d.ts +14 -0
- package/dist/src/debug/files.d.ts.map +1 -0
- package/dist/src/debug/files.js +29 -0
- package/dist/src/debug/files.js.map +1 -0
- package/dist/src/debug/files.test.d.ts +2 -0
- package/dist/src/debug/files.test.d.ts.map +1 -0
- package/dist/src/debug/files.test.js +66 -0
- package/dist/src/debug/files.test.js.map +1 -0
- package/dist/src/debug/index.d.ts +63 -0
- package/dist/src/debug/index.d.ts.map +1 -0
- package/dist/src/debug/index.js +71 -0
- package/dist/src/debug/index.js.map +1 -0
- package/dist/src/debug/message-format.test.d.ts +2 -0
- package/dist/src/debug/message-format.test.d.ts.map +1 -0
- package/dist/src/debug/message-format.test.js +700 -0
- package/dist/src/debug/message-format.test.js.map +1 -0
- package/dist/src/debug/render-tree-orphans.test.d.ts +2 -0
- package/dist/src/debug/render-tree-orphans.test.d.ts.map +1 -0
- package/dist/src/debug/render-tree-orphans.test.js +297 -0
- package/dist/src/debug/render-tree-orphans.test.js.map +1 -0
- package/dist/src/debug/render.d.ts +57 -0
- package/dist/src/debug/render.d.ts.map +1 -0
- package/dist/src/debug/render.js +472 -0
- package/dist/src/debug/render.js.map +1 -0
- package/dist/src/debug/render.test.d.ts +2 -0
- package/dist/src/debug/render.test.d.ts.map +1 -0
- package/dist/src/debug/render.test.js +291 -0
- package/dist/src/debug/render.test.js.map +1 -0
- package/dist/src/debug/serialize.d.ts +9 -0
- package/dist/src/debug/serialize.d.ts.map +1 -0
- package/dist/src/debug/serialize.js +70 -0
- package/dist/src/debug/serialize.js.map +1 -0
- package/dist/src/debug/symbols.d.ts +16 -0
- package/dist/src/debug/symbols.d.ts.map +1 -0
- package/dist/src/debug/symbols.js +196 -0
- package/dist/src/debug/symbols.js.map +1 -0
- package/dist/src/debug/symbols.test.d.ts +2 -0
- package/dist/src/debug/symbols.test.d.ts.map +1 -0
- package/dist/src/debug/symbols.test.js +93 -0
- package/dist/src/debug/symbols.test.js.map +1 -0
- package/dist/src/debug/trace-writer.d.ts +55 -0
- package/dist/src/debug/trace-writer.d.ts.map +1 -0
- package/dist/src/debug/trace-writer.js +658 -0
- package/dist/src/debug/trace-writer.js.map +1 -0
- package/dist/src/debug/trace.d.ts +342 -0
- package/dist/src/debug/trace.d.ts.map +1 -0
- package/dist/src/debug/trace.js +446 -0
- package/dist/src/debug/trace.js.map +1 -0
- package/dist/src/devtools/devtools-protocol.d.ts +389 -0
- package/dist/src/devtools/devtools-protocol.d.ts.map +1 -0
- package/dist/src/devtools/devtools-protocol.js +2 -0
- package/dist/src/devtools/devtools-protocol.js.map +1 -0
- package/dist/src/devtools/devtools-server.browser.d.ts +23 -0
- package/dist/src/devtools/devtools-server.browser.d.ts.map +1 -0
- package/dist/src/devtools/devtools-server.browser.js +33 -0
- package/dist/src/devtools/devtools-server.browser.js.map +1 -0
- package/dist/src/devtools/devtools-server.d.ts +66 -0
- package/dist/src/devtools/devtools-server.d.ts.map +1 -0
- package/dist/src/devtools/devtools-server.js +444 -0
- package/dist/src/devtools/devtools-server.js.map +1 -0
- package/dist/src/devtools/devtools-transport.d.ts +23 -0
- package/dist/src/devtools/devtools-transport.d.ts.map +1 -0
- package/dist/src/devtools/devtools-transport.js +114 -0
- package/dist/src/devtools/devtools-transport.js.map +1 -0
- package/dist/src/devtools-entry.browser.d.ts +4 -0
- package/dist/src/devtools-entry.browser.d.ts.map +1 -0
- package/dist/src/devtools-entry.browser.js +2 -0
- package/dist/src/devtools-entry.browser.js.map +1 -0
- package/dist/src/devtools-entry.d.ts +4 -0
- package/dist/src/devtools-entry.d.ts.map +1 -0
- package/dist/src/devtools-entry.js +2 -0
- package/dist/src/devtools-entry.js.map +1 -0
- package/dist/src/diagnostics.d.ts +34 -0
- package/dist/src/diagnostics.d.ts.map +1 -0
- package/dist/src/diagnostics.js +89 -0
- package/dist/src/diagnostics.js.map +1 -0
- package/dist/src/index.d.ts +3 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/print-hook.d.ts +14 -0
- package/dist/src/print-hook.d.ts.map +1 -0
- package/dist/src/print-hook.js +10 -0
- package/dist/src/print-hook.js.map +1 -0
- package/dist/src/reactive-union-set.d.ts.map +1 -1
- package/dist/src/reactive-union-set.js +28 -3
- package/dist/src/reactive-union-set.js.map +1 -1
- package/dist/src/reactivity.d.ts +60 -7
- package/dist/src/reactivity.d.ts.map +1 -1
- package/dist/src/reactivity.js +308 -39
- package/dist/src/reactivity.js.map +1 -1
- package/dist/src/render-stack.d.ts +18 -1
- package/dist/src/render-stack.d.ts.map +1 -1
- package/dist/src/render-stack.js +61 -1
- package/dist/src/render-stack.js.map +1 -1
- package/dist/src/render.d.ts +8 -15
- package/dist/src/render.d.ts.map +1 -1
- package/dist/src/render.js +424 -109
- package/dist/src/render.js.map +1 -1
- package/dist/src/resource.d.ts.map +1 -1
- package/dist/src/resource.js +5 -0
- package/dist/src/resource.js.map +1 -1
- package/dist/src/scheduler.d.ts +13 -0
- package/dist/src/scheduler.d.ts.map +1 -1
- package/dist/src/scheduler.js +150 -13
- package/dist/src/scheduler.js.map +1 -1
- package/dist/src/symbols/basic-symbol.d.ts.map +1 -1
- package/dist/src/symbols/basic-symbol.js +6 -1
- package/dist/src/symbols/basic-symbol.js.map +1 -1
- package/dist/src/symbols/decl.d.ts.map +1 -1
- package/dist/src/symbols/decl.js +5 -1
- package/dist/src/symbols/decl.js.map +1 -1
- package/dist/src/symbols/output-scope.d.ts +2 -1
- package/dist/src/symbols/output-scope.d.ts.map +1 -1
- package/dist/src/symbols/output-scope.js +13 -8
- package/dist/src/symbols/output-scope.js.map +1 -1
- package/dist/src/symbols/output-symbol.d.ts +1 -0
- package/dist/src/symbols/output-symbol.d.ts.map +1 -1
- package/dist/src/symbols/output-symbol.js +25 -8
- package/dist/src/symbols/output-symbol.js.map +1 -1
- package/dist/src/symbols/symbol-flow.d.ts.map +1 -1
- package/dist/src/symbols/symbol-flow.js +24 -8
- package/dist/src/symbols/symbol-flow.js.map +1 -1
- package/dist/src/symbols/symbol-slot.d.ts.map +1 -1
- package/dist/src/symbols/symbol-slot.js +15 -0
- package/dist/src/symbols/symbol-slot.js.map +1 -1
- package/dist/src/symbols/symbol-slot.test.d.ts +2 -0
- package/dist/src/symbols/symbol-slot.test.d.ts.map +1 -0
- package/dist/src/symbols/symbol-slot.test.js +35 -0
- package/dist/src/symbols/symbol-slot.test.js.map +1 -0
- package/dist/src/symbols/symbol-table.d.ts.map +1 -1
- package/dist/src/symbols/symbol-table.js +6 -5
- package/dist/src/symbols/symbol-table.js.map +1 -1
- package/dist/src/trace.d.ts +2 -0
- package/dist/src/trace.d.ts.map +1 -0
- package/dist/src/trace.js +2 -0
- package/dist/src/trace.js.map +1 -0
- package/dist/src/tracer.d.ts +2 -228
- package/dist/src/tracer.d.ts.map +1 -1
- package/dist/src/tracer.js +5 -298
- package/dist/src/tracer.js.map +1 -1
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/src/utils.js +17 -9
- package/dist/src/utils.js.map +1 -1
- package/dist/test/components/append-file.test.d.ts.map +1 -1
- package/dist/test/components/append-file.test.js +18 -10
- package/dist/test/components/append-file.test.js.map +1 -1
- package/dist/test/components/template-file.test.d.ts.map +1 -1
- package/dist/test/components/template-file.test.js +6 -4
- package/dist/test/components/template-file.test.js.map +1 -1
- package/dist/test/lazy-isempty.test.d.ts +2 -0
- package/dist/test/lazy-isempty.test.d.ts.map +1 -0
- package/dist/test/lazy-isempty.test.js +89 -0
- package/dist/test/lazy-isempty.test.js.map +1 -0
- package/dist/test/reactive-union-set-disposers.test.d.ts +2 -0
- package/dist/test/reactive-union-set-disposers.test.d.ts.map +1 -0
- package/dist/test/reactive-union-set-disposers.test.js +98 -0
- package/dist/test/reactive-union-set-disposers.test.js.map +1 -0
- package/dist/test/reactivity/shallow-reactive.test.d.ts +2 -0
- package/dist/test/reactivity/shallow-reactive.test.d.ts.map +1 -0
- package/dist/test/reactivity/shallow-reactive.test.js +52 -0
- package/dist/test/reactivity/shallow-reactive.test.js.map +1 -0
- package/dist/test/rendering/basic.test.js +3 -0
- package/dist/test/rendering/basic.test.js.map +1 -1
- package/dist/test/rendering/print-render-stack.test.d.ts.map +1 -1
- package/dist/test/rendering/print-render-stack.test.js +91 -98
- package/dist/test/rendering/print-render-stack.test.js.map +1 -1
- package/dist/test/scheduler-extended.test.d.ts +2 -0
- package/dist/test/scheduler-extended.test.d.ts.map +1 -0
- package/dist/test/scheduler-extended.test.js +96 -0
- package/dist/test/scheduler-extended.test.js.map +1 -0
- package/dist/test/scheduler.test.d.ts +2 -0
- package/dist/test/scheduler.test.d.ts.map +1 -0
- package/dist/test/scheduler.test.js +46 -0
- package/dist/test/scheduler.test.js.map +1 -0
- package/dist/testing/create-test-wrapper.d.ts +1 -1
- package/dist/testing/create-test-wrapper.d.ts.map +1 -1
- package/dist/testing/create-test-wrapper.js +1 -1
- package/dist/testing/create-test-wrapper.js.map +1 -1
- package/dist/testing/devtools-utils.d.ts +35 -0
- package/dist/testing/devtools-utils.d.ts.map +1 -0
- package/dist/testing/devtools-utils.js +162 -0
- package/dist/testing/devtools-utils.js.map +1 -0
- package/dist/testing/extend-expect.d.ts.map +1 -1
- package/dist/testing/extend-expect.js +63 -1
- package/dist/testing/extend-expect.js.map +1 -1
- package/dist/testing/render.d.ts +2 -2
- package/dist/testing/render.d.ts.map +1 -1
- package/dist/testing/render.js +2 -2
- package/dist/testing/render.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +21 -7
- package/scripts/copy-devtools-ui.mjs +26 -0
- package/src/binder.ts +117 -53
- package/src/components/AccessExpression.test.tsx +132 -0
- package/src/components/AccessExpression.tsx +344 -0
- package/src/components/AppendFile.tsx +14 -9
- package/src/components/Block.tsx +1 -1
- package/src/components/Declaration.tsx +2 -1
- package/src/components/For.tsx +14 -10
- package/src/components/List.tsx +7 -4
- package/src/components/Prose.tsx +1 -1
- package/src/components/Scope.tsx +6 -1
- package/src/components/SourceDirectory.tsx +1 -2
- package/src/components/Switch.tsx +11 -7
- package/src/components/TemplateFile.tsx +18 -9
- package/src/components/index.tsx +1 -0
- package/src/content-slot.tsx +7 -7
- package/src/context.ts +17 -6
- package/src/{debug.ts → debug/cli.ts} +114 -125
- package/src/debug/diagnostics.test.tsx +56 -0
- package/src/debug/effects.test.tsx +301 -0
- package/src/debug/effects.ts +531 -0
- package/src/debug/files.test.tsx +76 -0
- package/src/debug/files.ts +40 -0
- package/src/debug/index.ts +132 -0
- package/src/debug/message-format.test.tsx +759 -0
- package/src/debug/render-tree-orphans.test.tsx +344 -0
- package/src/debug/render.test.tsx +357 -0
- package/src/debug/render.ts +698 -0
- package/src/debug/serialize.ts +85 -0
- package/src/debug/symbols.test.tsx +105 -0
- package/src/debug/symbols.ts +322 -0
- package/src/debug/trace-writer.ts +969 -0
- package/src/debug/trace.ts +309 -0
- package/src/devtools/devtools-protocol.ts +497 -0
- package/src/devtools/devtools-server.browser.ts +62 -0
- package/src/devtools/devtools-server.ts +468 -0
- package/src/devtools/devtools-transport.ts +154 -0
- package/src/devtools-entry.browser.ts +48 -0
- package/src/devtools-entry.ts +48 -0
- package/src/diagnostics.ts +150 -0
- package/src/index.ts +2 -7
- package/src/print-hook.ts +22 -0
- package/src/reactive-union-set.ts +85 -44
- package/src/reactivity.ts +396 -58
- package/src/render-stack.ts +73 -1
- package/src/render.ts +544 -161
- package/src/resource.ts +28 -19
- package/src/scheduler.ts +209 -14
- package/src/symbols/basic-symbol.ts +6 -1
- package/src/symbols/decl.ts +5 -1
- package/src/symbols/output-scope.ts +21 -13
- package/src/symbols/output-symbol.ts +34 -14
- package/src/symbols/symbol-flow.ts +76 -39
- package/src/symbols/symbol-slot.test.tsx +41 -0
- package/src/symbols/symbol-slot.tsx +47 -20
- package/src/symbols/symbol-table.ts +6 -10
- package/src/trace.ts +1 -0
- package/src/tracer.ts +13 -242
- package/src/utils.tsx +31 -21
- package/temp/api.json +5700 -3015
- package/test/components/append-file.test.tsx +36 -29
- package/test/components/template-file.test.tsx +11 -11
- package/test/lazy-isempty.test.tsx +106 -0
- package/test/reactive-union-set-disposers.test.tsx +112 -0
- package/test/reactivity/shallow-reactive.test.tsx +56 -0
- package/test/rendering/basic.test.tsx +4 -0
- package/test/rendering/print-render-stack.test.tsx +52 -43
- package/test/scheduler-extended.test.tsx +122 -0
- package/test/scheduler.test.tsx +50 -0
- package/testing/create-test-wrapper.tsx +1 -1
- package/testing/devtools-utils.ts +245 -0
- package/testing/extend-expect.ts +89 -0
- package/testing/render.ts +2 -2
- package/testing/vitest.d.ts +9 -0
- package/dist/src/debug.d.ts +0 -14
- package/dist/src/debug.d.ts.map +0 -1
- package/dist/src/debug.js.map +0 -1
|
@@ -0,0 +1,389 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Alloy Devtools Protocol
|
|
3
|
+
* =======================
|
|
4
|
+
*
|
|
5
|
+
* Communication protocol between the Alloy debug runtime (core) and the
|
|
6
|
+
* devtools UI client, transported over WebSocket.
|
|
7
|
+
*
|
|
8
|
+
* Message shapes are flat snake_case objects that mirror the SQLite trace-writer
|
|
9
|
+
* row shapes so no format translation is needed on the wire.
|
|
10
|
+
*
|
|
11
|
+
* ─── IDs ─────────────────────────────────────────────────────────────────────
|
|
12
|
+
*
|
|
13
|
+
* All entity IDs (effects, refs, reactive-property refs, non-ref targets)
|
|
14
|
+
* are positive monotonically increasing integers drawn from their respective
|
|
15
|
+
* counters. Ref IDs and reactive-property IDs share a single counter so
|
|
16
|
+
* they never collide. There are no negative or sentinel IDs.
|
|
17
|
+
*
|
|
18
|
+
* ─── Effects ─────────────────────────────────────────────────────────────────
|
|
19
|
+
*
|
|
20
|
+
* An effect is any reactive computation tracked by Alloy's reactivity system.
|
|
21
|
+
*
|
|
22
|
+
* name Human-readable label. Format varies:
|
|
23
|
+
* "render:ComponentName" — render effect for a component
|
|
24
|
+
* "memo:For" — memo inside a For component
|
|
25
|
+
* "memo:props.children" — memo from JSX expression
|
|
26
|
+
* "binder:notifySymbolCreated" — binder infrastructure
|
|
27
|
+
* "myCallback" — user effect from fn.name
|
|
28
|
+
* For memos created by JSX expression tracking, the babel plugin
|
|
29
|
+
* generates a description of the expression (e.g. "props.foo").
|
|
30
|
+
*
|
|
31
|
+
* effect_type Optional effect category string. Set by framework code via
|
|
32
|
+
* the debug options on effect(). Values include "render",
|
|
33
|
+
* "content", "context", "resource", "binder", "list", "symbol",
|
|
34
|
+
* "collection", etc. null when no category was assigned (common
|
|
35
|
+
* for memos and user-created effects). Useful for display and
|
|
36
|
+
* grouping but NOT used for user-vs-external filtering.
|
|
37
|
+
*
|
|
38
|
+
* source_file / source_line / source_col
|
|
39
|
+
* Where the effect was created. Captured via V8 CallSite API
|
|
40
|
+
* with source map resolution (when --enable-source-maps is
|
|
41
|
+
* active). Points at the component or user code that called
|
|
42
|
+
* effect()/memo(), not the reactivity internals. May be null
|
|
43
|
+
* if the entire call stack is framework-internal.
|
|
44
|
+
*
|
|
45
|
+
* "User only" filtering:
|
|
46
|
+
* Based purely on source_file. An effect is "user code" when its
|
|
47
|
+
* source_file resolves to a path OUTSIDE node_modules (i.e. inside the
|
|
48
|
+
* user's project). Effects whose source_file is inside node_modules
|
|
49
|
+
* (including @alloy-js/* and any third-party library packages) or is
|
|
50
|
+
* null are "external" effects. The effect type and name are never used
|
|
51
|
+
* for this classification.
|
|
52
|
+
*
|
|
53
|
+
* ─── Refs ────────────────────────────────────────────────────────────────────
|
|
54
|
+
*
|
|
55
|
+
* A ref is any individually tracked reactive value. There are several kinds:
|
|
56
|
+
*
|
|
57
|
+
* kind="ref" Created by alloy's ref() wrapper.
|
|
58
|
+
* kind="shallowRef" Created by alloy's shallowRef() wrapper.
|
|
59
|
+
* kind="computed" Created by alloy's computed() wrapper.
|
|
60
|
+
* kind="reactive-property" A property of a reactive object, lazily
|
|
61
|
+
* registered on first track/trigger. Each
|
|
62
|
+
* (target, key) pair gets its own ref entry.
|
|
63
|
+
*
|
|
64
|
+
* Alloy wraps shallowReactive() to capture creation locations. Objects
|
|
65
|
+
* created via alloy's shallowReactive() wrapper have their creation site
|
|
66
|
+
* stored in a WeakMap. When a reactive-property ref is registered for such
|
|
67
|
+
* an object, the property ref inherits the shallowReactive() creation
|
|
68
|
+
* location. For objects using manual reactivity (e.g. OutputSymbol, which
|
|
69
|
+
* calls Vue's track()/trigger() directly on `this` rather than going through
|
|
70
|
+
* alloy's shallowReactive wrapper), the creation site is unknown and the
|
|
71
|
+
* first track/trigger site is used instead (flagged with is_approx_location).
|
|
72
|
+
*
|
|
73
|
+
* label Optional human-readable name. Takes priority over kind for
|
|
74
|
+
* display. Examples:
|
|
75
|
+
* "memo:For" — memo's internal ref
|
|
76
|
+
* "TSOutputSymbol \"Foo\".name" — reactive property
|
|
77
|
+
* When displaying, prefer: label ?? kind. The numeric ID is
|
|
78
|
+
* always shown separately as a dimmed suffix, never as part
|
|
79
|
+
* of the label text.
|
|
80
|
+
*
|
|
81
|
+
* is_infrastructure
|
|
82
|
+
* Boolean. True for refs created by framework internals that
|
|
83
|
+
* are implementation details (context.isEmpty, mapJoin index/
|
|
84
|
+
* joiner counters, devtools rerender tokens). These are not
|
|
85
|
+
* meaningful to end users and are always excluded in
|
|
86
|
+
* "user only" mode.
|
|
87
|
+
*
|
|
88
|
+
* is_approx_location
|
|
89
|
+
* Boolean. True when the source location was inferred from
|
|
90
|
+
* first usage rather than the actual creation site. Applies
|
|
91
|
+
* to reactive-property refs whose parent object was not
|
|
92
|
+
* created via alloy's shallowReactive() wrapper (e.g.
|
|
93
|
+
* OutputSymbol class instances with manual track/trigger).
|
|
94
|
+
* The UI should show a subtle indicator (e.g. a small muted
|
|
95
|
+
* icon with a tooltip), not a prominent warning.
|
|
96
|
+
*
|
|
97
|
+
* source_file / source_line / source_col
|
|
98
|
+
* Where the ref was created. For reactive-property refs from
|
|
99
|
+
* shallowReactive() objects, this is the shallowReactive()
|
|
100
|
+
* call site. For reactive-property refs from manual-reactivity
|
|
101
|
+
* objects, this is the first track site (is_approx_location=1).
|
|
102
|
+
* For regular refs/shallowRefs/computed, this is the call site
|
|
103
|
+
* with framework-internal stack frames skipped.
|
|
104
|
+
*
|
|
105
|
+
* "User only" filtering:
|
|
106
|
+
* A ref is "user code" when is_infrastructure is false AND source_file
|
|
107
|
+
* resolves to a path outside node_modules. Infrastructure refs are
|
|
108
|
+
* always excluded in user-only mode regardless of source location.
|
|
109
|
+
*
|
|
110
|
+
* ─── Edges ───────────────────────────────────────────────────────────────────
|
|
111
|
+
*
|
|
112
|
+
* Edges connect effects to refs via track/trigger relationships.
|
|
113
|
+
* ref_id points to a registered ref. target_id/target_key provide the
|
|
114
|
+
* raw reactive target info. For ref-backed edges, ref_id == target_id.
|
|
115
|
+
*
|
|
116
|
+
* ─── Source Location Resolution ──────────────────────────────────────────────
|
|
117
|
+
*
|
|
118
|
+
* Captured at entity creation time via V8's structured CallSite API.
|
|
119
|
+
* Framework-internal frames (reactivity engine, renderer, scheduler, debug
|
|
120
|
+
* infra) are skipped so the location points at the component or user code.
|
|
121
|
+
*
|
|
122
|
+
* When --enable-source-maps is active, paths and line numbers are resolved
|
|
123
|
+
* through source maps (.js → .ts). The server reports sourceMapEnabled in
|
|
124
|
+
* its handshake. Note: pnpm symlinks require realpathSync before
|
|
125
|
+
* findSourceMap lookup (Node's cache is keyed by real paths).
|
|
126
|
+
*/
|
|
127
|
+
import type { SourceLocation } from "../debug/effects.js";
|
|
128
|
+
export type { SourceLocation };
|
|
129
|
+
export interface DiagnosticRow {
|
|
130
|
+
message: string;
|
|
131
|
+
severity?: string;
|
|
132
|
+
source_file?: string;
|
|
133
|
+
source_line?: number;
|
|
134
|
+
source_col?: number;
|
|
135
|
+
component_stack?: string;
|
|
136
|
+
}
|
|
137
|
+
/** @deprecated Use flat fields on RenderNodeAddedMessage instead. */
|
|
138
|
+
export interface RenderTreeNode {
|
|
139
|
+
id: number;
|
|
140
|
+
kind: string;
|
|
141
|
+
name?: string;
|
|
142
|
+
propsSerialized?: string;
|
|
143
|
+
value?: string;
|
|
144
|
+
source?: SourceLocation;
|
|
145
|
+
}
|
|
146
|
+
/** @deprecated Use flat fields on RenderErrorMessage instead. */
|
|
147
|
+
export interface RenderErrorStackEntry {
|
|
148
|
+
name: string;
|
|
149
|
+
propsSerialized?: string;
|
|
150
|
+
renderNodeId?: number;
|
|
151
|
+
source?: SourceLocation;
|
|
152
|
+
}
|
|
153
|
+
export interface DebuggerInfoMessage {
|
|
154
|
+
type: "debugger:info";
|
|
155
|
+
version: string;
|
|
156
|
+
cwd?: string;
|
|
157
|
+
sourceMapEnabled: boolean;
|
|
158
|
+
}
|
|
159
|
+
export interface RenderResetMessage {
|
|
160
|
+
type: "render:reset";
|
|
161
|
+
}
|
|
162
|
+
export interface RenderNodeAddedMessage {
|
|
163
|
+
type: "render:node_added";
|
|
164
|
+
id: number;
|
|
165
|
+
parent_id: number | null;
|
|
166
|
+
kind: string;
|
|
167
|
+
name?: string;
|
|
168
|
+
props?: string;
|
|
169
|
+
value?: string;
|
|
170
|
+
source_file?: string;
|
|
171
|
+
source_line?: number;
|
|
172
|
+
source_col?: number;
|
|
173
|
+
context_id?: number | null;
|
|
174
|
+
seq: number;
|
|
175
|
+
}
|
|
176
|
+
export interface RenderNodeUpdatedMessage {
|
|
177
|
+
type: "render:node_updated";
|
|
178
|
+
id: number;
|
|
179
|
+
props?: string;
|
|
180
|
+
}
|
|
181
|
+
export interface RenderNodeRemovedMessage {
|
|
182
|
+
type: "render:node_removed";
|
|
183
|
+
id: number;
|
|
184
|
+
}
|
|
185
|
+
export interface RenderErrorMessage {
|
|
186
|
+
type: "render:error";
|
|
187
|
+
name?: string;
|
|
188
|
+
message?: string;
|
|
189
|
+
stack?: string;
|
|
190
|
+
component_stack?: string;
|
|
191
|
+
seq: number;
|
|
192
|
+
}
|
|
193
|
+
export interface RenderCompleteMessage {
|
|
194
|
+
type: "render:complete";
|
|
195
|
+
}
|
|
196
|
+
export interface FlushJobsCompleteMessage {
|
|
197
|
+
type: "flush:complete";
|
|
198
|
+
}
|
|
199
|
+
export interface EffectAddedMessage {
|
|
200
|
+
type: "effect:added";
|
|
201
|
+
id: number;
|
|
202
|
+
name?: string;
|
|
203
|
+
effect_type?: string;
|
|
204
|
+
context_id?: number | null;
|
|
205
|
+
owner_context_id?: number | null;
|
|
206
|
+
component?: string;
|
|
207
|
+
source_file?: string;
|
|
208
|
+
source_line?: number;
|
|
209
|
+
source_col?: number;
|
|
210
|
+
source_package?: string;
|
|
211
|
+
is_infrastructure?: number;
|
|
212
|
+
seq: number;
|
|
213
|
+
}
|
|
214
|
+
export interface EffectUpdatedMessage {
|
|
215
|
+
type: "effect:updated";
|
|
216
|
+
id: number;
|
|
217
|
+
name?: string;
|
|
218
|
+
effect_type?: string;
|
|
219
|
+
context_id?: number | null;
|
|
220
|
+
owner_context_id?: number | null;
|
|
221
|
+
component?: string;
|
|
222
|
+
source_file?: string;
|
|
223
|
+
source_line?: number;
|
|
224
|
+
source_col?: number;
|
|
225
|
+
source_package?: string;
|
|
226
|
+
is_infrastructure?: number;
|
|
227
|
+
seq: number;
|
|
228
|
+
}
|
|
229
|
+
export interface RefAddedMessage {
|
|
230
|
+
type: "ref:added";
|
|
231
|
+
id: number;
|
|
232
|
+
kind?: string;
|
|
233
|
+
label?: string;
|
|
234
|
+
created_by_effect_id?: number;
|
|
235
|
+
source_file?: string;
|
|
236
|
+
source_line?: number;
|
|
237
|
+
source_col?: number;
|
|
238
|
+
source_package?: string;
|
|
239
|
+
is_approx_location?: number;
|
|
240
|
+
seq: number;
|
|
241
|
+
}
|
|
242
|
+
export interface EffectTrackMessage {
|
|
243
|
+
type: "edge:track";
|
|
244
|
+
seq: number;
|
|
245
|
+
effect_id: number;
|
|
246
|
+
ref_id?: number;
|
|
247
|
+
target_id?: number;
|
|
248
|
+
target_kind?: string;
|
|
249
|
+
target_label?: string;
|
|
250
|
+
target_key?: string;
|
|
251
|
+
}
|
|
252
|
+
export interface EffectTriggerMessage {
|
|
253
|
+
type: "edge:trigger";
|
|
254
|
+
seq: number;
|
|
255
|
+
effect_id: number;
|
|
256
|
+
caused_by?: number;
|
|
257
|
+
ref_id?: number;
|
|
258
|
+
target_id?: number;
|
|
259
|
+
target_kind?: string;
|
|
260
|
+
target_label?: string;
|
|
261
|
+
target_key?: string;
|
|
262
|
+
}
|
|
263
|
+
export interface EffectEdgeUpdatedMessage {
|
|
264
|
+
type: "edge:updated";
|
|
265
|
+
seq: number;
|
|
266
|
+
effect_id: number;
|
|
267
|
+
caused_by?: number;
|
|
268
|
+
ref_id?: number;
|
|
269
|
+
target_id?: number;
|
|
270
|
+
target_kind?: string;
|
|
271
|
+
target_label?: string;
|
|
272
|
+
target_key?: string;
|
|
273
|
+
}
|
|
274
|
+
export interface EffectLifecycleMessage {
|
|
275
|
+
type: "effect:lifecycle";
|
|
276
|
+
seq: number;
|
|
277
|
+
effect_id: number;
|
|
278
|
+
event: string;
|
|
279
|
+
trigger_ref_id?: number;
|
|
280
|
+
}
|
|
281
|
+
export interface ScopeAddedMessage {
|
|
282
|
+
type: "scope:added";
|
|
283
|
+
id: number;
|
|
284
|
+
name: string;
|
|
285
|
+
parent_id?: number | null;
|
|
286
|
+
owner_symbol_id?: number | null;
|
|
287
|
+
render_node_id?: number | null;
|
|
288
|
+
is_member_scope?: number;
|
|
289
|
+
is_transient?: number;
|
|
290
|
+
metadata?: string;
|
|
291
|
+
seq: number;
|
|
292
|
+
}
|
|
293
|
+
export interface ScopeUpdatedMessage {
|
|
294
|
+
type: "scope:updated";
|
|
295
|
+
id: number;
|
|
296
|
+
name: string;
|
|
297
|
+
parent_id?: number | null;
|
|
298
|
+
owner_symbol_id?: number | null;
|
|
299
|
+
render_node_id?: number | null;
|
|
300
|
+
is_member_scope?: number;
|
|
301
|
+
is_transient?: number;
|
|
302
|
+
metadata?: string;
|
|
303
|
+
seq: number;
|
|
304
|
+
}
|
|
305
|
+
export interface ScopeRemovedMessage {
|
|
306
|
+
type: "scope:removed";
|
|
307
|
+
id: number;
|
|
308
|
+
}
|
|
309
|
+
export interface SymbolAddedMessage {
|
|
310
|
+
type: "symbol:added";
|
|
311
|
+
id: number;
|
|
312
|
+
name: string;
|
|
313
|
+
original_name?: string;
|
|
314
|
+
scope_id?: number | null;
|
|
315
|
+
owner_symbol_id?: number | null;
|
|
316
|
+
render_node_id?: number | null;
|
|
317
|
+
is_member?: number;
|
|
318
|
+
is_transient?: number;
|
|
319
|
+
is_alias?: number;
|
|
320
|
+
moved_to_id?: number | null;
|
|
321
|
+
metadata?: string;
|
|
322
|
+
seq: number;
|
|
323
|
+
}
|
|
324
|
+
export interface SymbolUpdatedMessage {
|
|
325
|
+
type: "symbol:updated";
|
|
326
|
+
id: number;
|
|
327
|
+
name: string;
|
|
328
|
+
original_name?: string;
|
|
329
|
+
scope_id?: number | null;
|
|
330
|
+
owner_symbol_id?: number | null;
|
|
331
|
+
render_node_id?: number | null;
|
|
332
|
+
is_member?: number;
|
|
333
|
+
is_transient?: number;
|
|
334
|
+
is_alias?: number;
|
|
335
|
+
moved_to_id?: number | null;
|
|
336
|
+
metadata?: string;
|
|
337
|
+
seq: number;
|
|
338
|
+
}
|
|
339
|
+
export interface SymbolRemovedMessage {
|
|
340
|
+
type: "symbol:removed";
|
|
341
|
+
id: number;
|
|
342
|
+
}
|
|
343
|
+
export interface FileAddedMessage {
|
|
344
|
+
type: "file:added";
|
|
345
|
+
path: string;
|
|
346
|
+
filetype?: string;
|
|
347
|
+
render_node_id?: number;
|
|
348
|
+
seq: number;
|
|
349
|
+
}
|
|
350
|
+
export interface FileUpdatedMessage {
|
|
351
|
+
type: "file:updated";
|
|
352
|
+
path: string;
|
|
353
|
+
content?: string;
|
|
354
|
+
}
|
|
355
|
+
export interface FileRemovedMessage {
|
|
356
|
+
type: "file:removed";
|
|
357
|
+
path: string;
|
|
358
|
+
}
|
|
359
|
+
export interface DirectoryAddedMessage {
|
|
360
|
+
type: "directory:added";
|
|
361
|
+
path: string;
|
|
362
|
+
}
|
|
363
|
+
export interface DirectoryRemovedMessage {
|
|
364
|
+
type: "directory:removed";
|
|
365
|
+
path: string;
|
|
366
|
+
}
|
|
367
|
+
export interface DiagnosticsReportMessage {
|
|
368
|
+
type: "diagnostics:report";
|
|
369
|
+
diagnostics: DiagnosticRow[];
|
|
370
|
+
}
|
|
371
|
+
export type ServerToClientMessage = DebuggerInfoMessage | RenderResetMessage | RenderNodeAddedMessage | RenderNodeUpdatedMessage | RenderNodeRemovedMessage | RenderErrorMessage | RenderCompleteMessage | FlushJobsCompleteMessage | EffectAddedMessage | EffectUpdatedMessage | RefAddedMessage | EffectTrackMessage | EffectTriggerMessage | EffectEdgeUpdatedMessage | EffectLifecycleMessage | ScopeAddedMessage | ScopeUpdatedMessage | ScopeRemovedMessage | SymbolAddedMessage | SymbolUpdatedMessage | SymbolRemovedMessage | FileAddedMessage | FileUpdatedMessage | FileRemovedMessage | DirectoryAddedMessage | DirectoryRemovedMessage | DiagnosticsReportMessage;
|
|
372
|
+
export interface SubscribeMessage {
|
|
373
|
+
type: "subscribe";
|
|
374
|
+
channels: string[];
|
|
375
|
+
}
|
|
376
|
+
export interface UnsubscribeMessage {
|
|
377
|
+
type: "unsubscribe";
|
|
378
|
+
channels: string[];
|
|
379
|
+
}
|
|
380
|
+
export interface RerenderRequestMessage {
|
|
381
|
+
type: "render:rerender";
|
|
382
|
+
id: number;
|
|
383
|
+
}
|
|
384
|
+
export interface RerenderBreakRequestMessage {
|
|
385
|
+
type: "render:rerenderAndBreak";
|
|
386
|
+
id: number;
|
|
387
|
+
}
|
|
388
|
+
export type ClientToServerMessage = SubscribeMessage | UnsubscribeMessage | RerenderRequestMessage | RerenderBreakRequestMessage;
|
|
389
|
+
//# sourceMappingURL=devtools-protocol.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"devtools-protocol.d.ts","sourceRoot":"","sources":["../../../src/devtools/devtools-protocol.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export interface DevtoolsIncomingMessage {
|
|
2
|
+
type: string;
|
|
3
|
+
[key: string]: unknown;
|
|
4
|
+
}
|
|
5
|
+
export interface DevtoolsServerInfo {
|
|
6
|
+
port: number;
|
|
7
|
+
connected: boolean;
|
|
8
|
+
}
|
|
9
|
+
export declare function isDevtoolsEnabled(): boolean;
|
|
10
|
+
export declare function waitForDevtoolsConnection(): Promise<void>;
|
|
11
|
+
export interface EnableDevtoolsOptions {
|
|
12
|
+
port?: number;
|
|
13
|
+
waitForConnection?: boolean;
|
|
14
|
+
}
|
|
15
|
+
export declare function enableDevtools(_options?: EnableDevtoolsOptions): Promise<void>;
|
|
16
|
+
export declare function initDevtoolsIfEnabled(): Promise<void>;
|
|
17
|
+
export declare function registerDevtoolsMessageHandler(_handler: (message: DevtoolsIncomingMessage) => void): () => void;
|
|
18
|
+
export declare function assertDevtoolsConnectedForSyncRender(): void;
|
|
19
|
+
export declare function isDevtoolsConnected(): boolean;
|
|
20
|
+
export declare function getDevtoolsServerInfo(): DevtoolsServerInfo | null;
|
|
21
|
+
export declare function enableDevtoolsAndConnect(_options?: EnableDevtoolsOptions): Promise<DevtoolsServerInfo | null>;
|
|
22
|
+
export declare function resetDevtoolsServerForTests(): Promise<void>;
|
|
23
|
+
//# sourceMappingURL=devtools-server.browser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"devtools-server.browser.d.ts","sourceRoot":"","sources":["../../../src/devtools/devtools-server.browser.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,IAAI,CAAC,CAE/D;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,wBAAsB,cAAc,CAClC,QAAQ,CAAC,EAAE,qBAAqB,GAC/B,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAE3D;AAED,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,CAAC,OAAO,EAAE,uBAAuB,KAAK,IAAI,GACnD,MAAM,IAAI,CAEZ;AAED,wBAAgB,oCAAoC,IAAI,IAAI,CAE3D;AAED,wBAAgB,mBAAmB,IAAI,OAAO,CAE7C;AAED,wBAAgB,qBAAqB,IAAI,kBAAkB,GAAG,IAAI,CAEjE;AAED,wBAAsB,wBAAwB,CAC5C,QAAQ,CAAC,EAAE,qBAAqB,GAC/B,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAEpC;AAED,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC,CAEjE"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
// Browser stub for devtools-server - devtools are not supported in browsers
|
|
2
|
+
|
|
3
|
+
export function isDevtoolsEnabled() {
|
|
4
|
+
return false;
|
|
5
|
+
}
|
|
6
|
+
export async function waitForDevtoolsConnection() {
|
|
7
|
+
// No-op in browser
|
|
8
|
+
}
|
|
9
|
+
export async function enableDevtools(_options) {
|
|
10
|
+
// No-op in browser
|
|
11
|
+
}
|
|
12
|
+
export async function initDevtoolsIfEnabled() {
|
|
13
|
+
// No-op in browser
|
|
14
|
+
}
|
|
15
|
+
export function registerDevtoolsMessageHandler(_handler) {
|
|
16
|
+
return () => {};
|
|
17
|
+
}
|
|
18
|
+
export function assertDevtoolsConnectedForSyncRender() {
|
|
19
|
+
// No-op in browser
|
|
20
|
+
}
|
|
21
|
+
export function isDevtoolsConnected() {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
export function getDevtoolsServerInfo() {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
export async function enableDevtoolsAndConnect(_options) {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
export async function resetDevtoolsServerForTests() {
|
|
31
|
+
// No-op in browser
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=devtools-server.browser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["isDevtoolsEnabled","waitForDevtoolsConnection","enableDevtools","_options","initDevtoolsIfEnabled","registerDevtoolsMessageHandler","_handler","assertDevtoolsConnectedForSyncRender","isDevtoolsConnected","getDevtoolsServerInfo","enableDevtoolsAndConnect","resetDevtoolsServerForTests"],"sources":["../../../src/devtools/devtools-server.browser.ts"],"sourcesContent":[null],"mappings":"AAAA;;AAYA,OAAO,SAASA,iBAAiBA,CAAA,EAAY;EAC3C,OAAO,KAAK;AACd;AAEA,OAAO,eAAeC,yBAAyBA,CAAA,EAAkB;EAC/D;AAAA;AAQF,OAAO,eAAeC,cAAcA,CAClCC,QAAgC,EACjB;EACf;AAAA;AAGF,OAAO,eAAeC,qBAAqBA,CAAA,EAAkB;EAC3D;AAAA;AAGF,OAAO,SAASC,8BAA8BA,CAC5CC,QAAoD,EACxC;EACZ,OAAO,MAAM,CAAC,CAAC;AACjB;AAEA,OAAO,SAASC,oCAAoCA,CAAA,EAAS;EAC3D;AAAA;AAGF,OAAO,SAASC,mBAAmBA,CAAA,EAAY;EAC7C,OAAO,KAAK;AACd;AAEA,OAAO,SAASC,qBAAqBA,CAAA,EAA8B;EACjE,OAAO,IAAI;AACb;AAEA,OAAO,eAAeC,wBAAwBA,CAC5CP,QAAgC,EACI;EACpC,OAAO,IAAI;AACb;AAEA,OAAO,eAAeQ,2BAA2BA,CAAA,EAAkB;EACjE;AAAA","ignoreList":[]}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
export interface DevtoolsIncomingMessage {
|
|
2
|
+
type: string;
|
|
3
|
+
[key: string]: unknown;
|
|
4
|
+
}
|
|
5
|
+
export interface DevtoolsServerInfo {
|
|
6
|
+
port: number;
|
|
7
|
+
connected: boolean;
|
|
8
|
+
}
|
|
9
|
+
export interface EnableDevtoolsOptions {
|
|
10
|
+
/** Port to listen on. Use 0 for a random available port. Defaults to ALLOY_DEBUG_PORT or 8123. */
|
|
11
|
+
port?: number;
|
|
12
|
+
}
|
|
13
|
+
/** Returns true when devtools are enabled (via env var or explicit call). */
|
|
14
|
+
export declare function isDevtoolsEnabled(): boolean;
|
|
15
|
+
/** Returns true when a devtools client is currently connected. */
|
|
16
|
+
export declare function isDevtoolsConnected(): boolean;
|
|
17
|
+
/** Get the current server info, or null if not running. */
|
|
18
|
+
export declare function getDevtoolsServerInfo(): DevtoolsServerInfo | null;
|
|
19
|
+
/**
|
|
20
|
+
* Wait for a devtools client to connect before proceeding.
|
|
21
|
+
*
|
|
22
|
+
* Starts the devtools server if not already running, and blocks until a
|
|
23
|
+
* devtools client connects via WebSocket.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```ts
|
|
27
|
+
* import { waitForDevtoolsConnection } from "@alloy-js/core/devtools";
|
|
28
|
+
* import { render } from "@alloy-js/core";
|
|
29
|
+
*
|
|
30
|
+
* await waitForDevtoolsConnection();
|
|
31
|
+
* const tree = render(<MyComponent />);
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
export declare function waitForDevtoolsConnection(): Promise<void>;
|
|
35
|
+
/**
|
|
36
|
+
* Enable devtools and start the server, returning when the server is ready.
|
|
37
|
+
* Use this in tests to enable devtools before connecting a client.
|
|
38
|
+
*
|
|
39
|
+
* @returns Server info with port number
|
|
40
|
+
*/
|
|
41
|
+
export declare function enableDevtools(options?: EnableDevtoolsOptions): Promise<DevtoolsServerInfo>;
|
|
42
|
+
/**
|
|
43
|
+
* Initialize devtools if ALLOY_DEBUG is set. Called lazily by render functions.
|
|
44
|
+
* Returns immediately if devtools are not enabled or already initialized.
|
|
45
|
+
*/
|
|
46
|
+
export declare function initDevtoolsIfEnabled(): Promise<void>;
|
|
47
|
+
/**
|
|
48
|
+
* Start the devtools server and wait for a client connection.
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* ```ts
|
|
52
|
+
* const serverInfo = await enableDevtoolsAndConnect({ port: 0 });
|
|
53
|
+
* // ... run your test ...
|
|
54
|
+
* await resetDevtoolsServerForTests();
|
|
55
|
+
* ```
|
|
56
|
+
*
|
|
57
|
+
* @returns Server info once a client has connected
|
|
58
|
+
*/
|
|
59
|
+
export declare function enableDevtoolsAndConnect(options?: EnableDevtoolsOptions): Promise<DevtoolsServerInfo>;
|
|
60
|
+
/** Register a handler for incoming devtools messages. Returns an unsubscribe function. */
|
|
61
|
+
export declare function registerDevtoolsMessageHandler(handler: (message: DevtoolsIncomingMessage) => void): () => boolean;
|
|
62
|
+
/** Throw if devtools are enabled but no client is connected (for sync render). */
|
|
63
|
+
export declare function assertDevtoolsConnectedForSyncRender(): void;
|
|
64
|
+
/** Reset all devtools state. For use in tests only. */
|
|
65
|
+
export declare function resetDevtoolsServerForTests(): Promise<void>;
|
|
66
|
+
//# sourceMappingURL=devtools-server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"devtools-server.d.ts","sourceRoot":"","sources":["../../../src/devtools/devtools-server.ts"],"names":[],"mappings":"AA0BA,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,kGAAkG;IAClG,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAyID,6EAA6E;AAC7E,wBAAgB,iBAAiB,YAGhC;AAED,kEAAkE;AAClE,wBAAgB,mBAAmB,IAAI,OAAO,CAE7C;AAED,2DAA2D;AAC3D,wBAAgB,qBAAqB,IAAI,kBAAkB,GAAG,IAAI,CAGjE;AAwJD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,IAAI,CAAC,CAW/D;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,kBAAkB,CAAC,CAS7B;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAM3D;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,kBAAkB,CAAC,CAM7B;AAMD,0FAA0F;AAC1F,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,CAAC,OAAO,EAAE,uBAAuB,KAAK,IAAI,iBAIpD;AAED,kFAAkF;AAClF,wBAAgB,oCAAoC,SAOnD;AAMD,uDAAuD;AACvD,wBAAsB,2BAA2B,kBAgBhD"}
|