@asciiz/atoolkit 0.1.0
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/LICENSE +21 -0
- package/ReadMe.md +198 -0
- package/dist/acircuit/chip.d.ts +46 -0
- package/dist/acircuit/chip.d.ts.map +1 -0
- package/dist/acircuit/chip.js +104 -0
- package/dist/acircuit/chip.js.map +1 -0
- package/dist/acircuit/circuit.d.ts +86 -0
- package/dist/acircuit/circuit.d.ts.map +1 -0
- package/dist/acircuit/circuit.js +606 -0
- package/dist/acircuit/circuit.js.map +1 -0
- package/dist/acircuit/composite.d.ts +32 -0
- package/dist/acircuit/composite.d.ts.map +1 -0
- package/dist/acircuit/composite.js +88 -0
- package/dist/acircuit/composite.js.map +1 -0
- package/dist/acircuit/index.d.ts +7 -0
- package/dist/acircuit/index.d.ts.map +1 -0
- package/dist/acircuit/index.js +6 -0
- package/dist/acircuit/index.js.map +1 -0
- package/dist/acircuit/socket.d.ts +20 -0
- package/dist/acircuit/socket.d.ts.map +1 -0
- package/dist/acircuit/socket.js +23 -0
- package/dist/acircuit/socket.js.map +1 -0
- package/dist/acircuit/types.d.ts +94 -0
- package/dist/acircuit/types.d.ts.map +1 -0
- package/dist/acircuit/types.js +2 -0
- package/dist/acircuit/types.js.map +1 -0
- package/dist/acircuit/wire.d.ts +26 -0
- package/dist/acircuit/wire.d.ts.map +1 -0
- package/dist/acircuit/wire.js +23 -0
- package/dist/acircuit/wire.js.map +1 -0
- package/dist/adiag/bus.d.ts +65 -0
- package/dist/adiag/bus.d.ts.map +1 -0
- package/dist/adiag/bus.js +225 -0
- package/dist/adiag/bus.js.map +1 -0
- package/dist/adiag/index.d.ts +3 -0
- package/dist/adiag/index.d.ts.map +1 -0
- package/dist/adiag/index.js +2 -0
- package/dist/adiag/index.js.map +1 -0
- package/dist/aecs/ComponentSet.d.ts +33 -0
- package/dist/aecs/ComponentSet.d.ts.map +1 -0
- package/dist/aecs/ComponentSet.js +127 -0
- package/dist/aecs/ComponentSet.js.map +1 -0
- package/dist/aecs/Entity.d.ts +43 -0
- package/dist/aecs/Entity.d.ts.map +1 -0
- package/dist/aecs/Entity.js +82 -0
- package/dist/aecs/Entity.js.map +1 -0
- package/dist/aecs/FloatSet.d.ts +34 -0
- package/dist/aecs/FloatSet.d.ts.map +1 -0
- package/dist/aecs/FloatSet.js +147 -0
- package/dist/aecs/FloatSet.js.map +1 -0
- package/dist/aecs/Query.d.ts +90 -0
- package/dist/aecs/Query.d.ts.map +1 -0
- package/dist/aecs/Query.js +304 -0
- package/dist/aecs/Query.js.map +1 -0
- package/dist/aecs/index.d.ts +6 -0
- package/dist/aecs/index.d.ts.map +1 -0
- package/dist/aecs/index.js +6 -0
- package/dist/aecs/index.js.map +1 -0
- package/dist/aecs/join.d.ts +2 -0
- package/dist/aecs/join.d.ts.map +1 -0
- package/dist/aecs/join.js +2 -0
- package/dist/aecs/join.js.map +1 -0
- package/dist/alm/constants.d.ts +11 -0
- package/dist/alm/constants.d.ts.map +1 -0
- package/dist/alm/constants.js +17 -0
- package/dist/alm/constants.js.map +1 -0
- package/dist/alm/index.d.ts +9 -0
- package/dist/alm/index.d.ts.map +1 -0
- package/dist/alm/index.js +12 -0
- package/dist/alm/index.js.map +1 -0
- package/dist/alm/mat3.d.ts +63 -0
- package/dist/alm/mat3.d.ts.map +1 -0
- package/dist/alm/mat3.js +393 -0
- package/dist/alm/mat3.js.map +1 -0
- package/dist/alm/mat4.d.ts +157 -0
- package/dist/alm/mat4.d.ts.map +1 -0
- package/dist/alm/mat4.js +1448 -0
- package/dist/alm/mat4.js.map +1 -0
- package/dist/alm/quat.d.ts +89 -0
- package/dist/alm/quat.d.ts.map +1 -0
- package/dist/alm/quat.js +543 -0
- package/dist/alm/quat.js.map +1 -0
- package/dist/alm/spatial.d.ts +102 -0
- package/dist/alm/spatial.d.ts.map +1 -0
- package/dist/alm/spatial.js +389 -0
- package/dist/alm/spatial.js.map +1 -0
- package/dist/alm/vec2.d.ts +97 -0
- package/dist/alm/vec2.d.ts.map +1 -0
- package/dist/alm/vec2.js +369 -0
- package/dist/alm/vec2.js.map +1 -0
- package/dist/alm/vec3.d.ts +117 -0
- package/dist/alm/vec3.d.ts.map +1 -0
- package/dist/alm/vec3.js +547 -0
- package/dist/alm/vec3.js.map +1 -0
- package/dist/alm/vec4.d.ts +95 -0
- package/dist/alm/vec4.d.ts.map +1 -0
- package/dist/alm/vec4.js +452 -0
- package/dist/alm/vec4.js.map +1 -0
- package/dist/atempo/cadence.d.ts +58 -0
- package/dist/atempo/cadence.d.ts.map +1 -0
- package/dist/atempo/cadence.js +110 -0
- package/dist/atempo/cadence.js.map +1 -0
- package/dist/atempo/clip.d.ts +37 -0
- package/dist/atempo/clip.d.ts.map +1 -0
- package/dist/atempo/clip.js +92 -0
- package/dist/atempo/clip.js.map +1 -0
- package/dist/atempo/curve.d.ts +6 -0
- package/dist/atempo/curve.d.ts.map +1 -0
- package/dist/atempo/curve.js +2 -0
- package/dist/atempo/curve.js.map +1 -0
- package/dist/atempo/curves/bezier.d.ts +7 -0
- package/dist/atempo/curves/bezier.d.ts.map +1 -0
- package/dist/atempo/curves/bezier.js +46 -0
- package/dist/atempo/curves/bezier.js.map +1 -0
- package/dist/atempo/curves/bounce.d.ts +6 -0
- package/dist/atempo/curves/bounce.d.ts.map +1 -0
- package/dist/atempo/curves/bounce.js +22 -0
- package/dist/atempo/curves/bounce.js.map +1 -0
- package/dist/atempo/curves/cubic.d.ts +14 -0
- package/dist/atempo/curves/cubic.d.ts.map +1 -0
- package/dist/atempo/curves/cubic.js +22 -0
- package/dist/atempo/curves/cubic.js.map +1 -0
- package/dist/atempo/curves/elastic.d.ts +6 -0
- package/dist/atempo/curves/elastic.d.ts.map +1 -0
- package/dist/atempo/curves/elastic.js +12 -0
- package/dist/atempo/curves/elastic.js.map +1 -0
- package/dist/atempo/curves/expo.d.ts +14 -0
- package/dist/atempo/curves/expo.d.ts.map +1 -0
- package/dist/atempo/curves/expo.js +26 -0
- package/dist/atempo/curves/expo.js.map +1 -0
- package/dist/atempo/curves/holdSnap.d.ts +6 -0
- package/dist/atempo/curves/holdSnap.d.ts.map +1 -0
- package/dist/atempo/curves/holdSnap.js +15 -0
- package/dist/atempo/curves/holdSnap.js.map +1 -0
- package/dist/atempo/curves/index.d.ts +14 -0
- package/dist/atempo/curves/index.d.ts.map +1 -0
- package/dist/atempo/curves/index.js +14 -0
- package/dist/atempo/curves/index.js.map +1 -0
- package/dist/atempo/curves/linear.d.ts +6 -0
- package/dist/atempo/curves/linear.d.ts.map +1 -0
- package/dist/atempo/curves/linear.js +5 -0
- package/dist/atempo/curves/linear.js.map +1 -0
- package/dist/atempo/curves/overshoot.d.ts +6 -0
- package/dist/atempo/curves/overshoot.d.ts.map +1 -0
- package/dist/atempo/curves/overshoot.js +16 -0
- package/dist/atempo/curves/overshoot.js.map +1 -0
- package/dist/atempo/curves/quad.d.ts +14 -0
- package/dist/atempo/curves/quad.d.ts.map +1 -0
- package/dist/atempo/curves/quad.js +22 -0
- package/dist/atempo/curves/quad.js.map +1 -0
- package/dist/atempo/curves/step.d.ts +6 -0
- package/dist/atempo/curves/step.d.ts.map +1 -0
- package/dist/atempo/curves/step.js +11 -0
- package/dist/atempo/curves/step.js.map +1 -0
- package/dist/atempo/index.d.ts +17 -0
- package/dist/atempo/index.d.ts.map +1 -0
- package/dist/atempo/index.js +18 -0
- package/dist/atempo/index.js.map +1 -0
- package/dist/atempo/phase.d.ts +66 -0
- package/dist/atempo/phase.d.ts.map +1 -0
- package/dist/atempo/phase.js +121 -0
- package/dist/atempo/phase.js.map +1 -0
- package/dist/atempo/spring.d.ts +20 -0
- package/dist/atempo/spring.d.ts.map +1 -0
- package/dist/atempo/spring.js +71 -0
- package/dist/atempo/spring.js.map +1 -0
- package/dist/atempo/track.d.ts +69 -0
- package/dist/atempo/track.d.ts.map +1 -0
- package/dist/atempo/track.js +184 -0
- package/dist/atempo/track.js.map +1 -0
- package/dist/atempo/tracks/color.d.ts +20 -0
- package/dist/atempo/tracks/color.d.ts.map +1 -0
- package/dist/atempo/tracks/color.js +52 -0
- package/dist/atempo/tracks/color.js.map +1 -0
- package/dist/atempo/tracks/float.d.ts +9 -0
- package/dist/atempo/tracks/float.d.ts.map +1 -0
- package/dist/atempo/tracks/float.js +13 -0
- package/dist/atempo/tracks/float.js.map +1 -0
- package/dist/atempo/tracks/index.d.ts +8 -0
- package/dist/atempo/tracks/index.d.ts.map +1 -0
- package/dist/atempo/tracks/index.js +8 -0
- package/dist/atempo/tracks/index.js.map +1 -0
- package/dist/atempo/tracks/quat.d.ts +16 -0
- package/dist/atempo/tracks/quat.d.ts.map +1 -0
- package/dist/atempo/tracks/quat.js +72 -0
- package/dist/atempo/tracks/quat.js.map +1 -0
- package/dist/atempo/tracks/vec.d.ts +11 -0
- package/dist/atempo/tracks/vec.d.ts.map +1 -0
- package/dist/atempo/tracks/vec.js +27 -0
- package/dist/atempo/tracks/vec.js.map +1 -0
- package/dist/awasm/abi/index.d.ts +4 -0
- package/dist/awasm/abi/index.d.ts.map +1 -0
- package/dist/awasm/abi/index.js +4 -0
- package/dist/awasm/abi/index.js.map +1 -0
- package/dist/awasm/abi/layout.d.ts +40 -0
- package/dist/awasm/abi/layout.d.ts.map +1 -0
- package/dist/awasm/abi/layout.js +100 -0
- package/dist/awasm/abi/layout.js.map +1 -0
- package/dist/awasm/abi/slice.d.ts +28 -0
- package/dist/awasm/abi/slice.d.ts.map +1 -0
- package/dist/awasm/abi/slice.js +68 -0
- package/dist/awasm/abi/slice.js.map +1 -0
- package/dist/awasm/abi/string-buffer.d.ts +23 -0
- package/dist/awasm/abi/string-buffer.d.ts.map +1 -0
- package/dist/awasm/abi/string-buffer.js +52 -0
- package/dist/awasm/abi/string-buffer.js.map +1 -0
- package/dist/awasm/index.d.ts +5 -0
- package/dist/awasm/index.d.ts.map +1 -0
- package/dist/awasm/index.js +8 -0
- package/dist/awasm/index.js.map +1 -0
- package/dist/awasm/memory/block-pool.d.ts +31 -0
- package/dist/awasm/memory/block-pool.d.ts.map +1 -0
- package/dist/awasm/memory/block-pool.js +98 -0
- package/dist/awasm/memory/block-pool.js.map +1 -0
- package/dist/awasm/memory/index.d.ts +5 -0
- package/dist/awasm/memory/index.d.ts.map +1 -0
- package/dist/awasm/memory/index.js +5 -0
- package/dist/awasm/memory/index.js.map +1 -0
- package/dist/awasm/memory/linear-arena.d.ts +36 -0
- package/dist/awasm/memory/linear-arena.d.ts.map +1 -0
- package/dist/awasm/memory/linear-arena.js +94 -0
- package/dist/awasm/memory/linear-arena.js.map +1 -0
- package/dist/awasm/memory/memory-view.d.ts +51 -0
- package/dist/awasm/memory/memory-view.d.ts.map +1 -0
- package/dist/awasm/memory/memory-view.js +110 -0
- package/dist/awasm/memory/memory-view.js.map +1 -0
- package/dist/awasm/memory/wasm-memory.d.ts +40 -0
- package/dist/awasm/memory/wasm-memory.d.ts.map +1 -0
- package/dist/awasm/memory/wasm-memory.js +88 -0
- package/dist/awasm/memory/wasm-memory.js.map +1 -0
- package/dist/awasm/runtime/host-bridge.d.ts +30 -0
- package/dist/awasm/runtime/host-bridge.d.ts.map +1 -0
- package/dist/awasm/runtime/host-bridge.js +57 -0
- package/dist/awasm/runtime/host-bridge.js.map +1 -0
- package/dist/awasm/runtime/index.d.ts +5 -0
- package/dist/awasm/runtime/index.d.ts.map +1 -0
- package/dist/awasm/runtime/index.js +5 -0
- package/dist/awasm/runtime/index.js.map +1 -0
- package/dist/awasm/runtime/module-inspector.d.ts +32 -0
- package/dist/awasm/runtime/module-inspector.d.ts.map +1 -0
- package/dist/awasm/runtime/module-inspector.js +43 -0
- package/dist/awasm/runtime/module-inspector.js.map +1 -0
- package/dist/awasm/runtime/module-loader.d.ts +17 -0
- package/dist/awasm/runtime/module-loader.d.ts.map +1 -0
- package/dist/awasm/runtime/module-loader.js +99 -0
- package/dist/awasm/runtime/module-loader.js.map +1 -0
- package/dist/awasm/runtime/wasm-instance.d.ts +25 -0
- package/dist/awasm/runtime/wasm-instance.d.ts.map +1 -0
- package/dist/awasm/runtime/wasm-instance.js +60 -0
- package/dist/awasm/runtime/wasm-instance.js.map +1 -0
- package/dist/awasm/thread/atomic-queue.d.ts +33 -0
- package/dist/awasm/thread/atomic-queue.d.ts.map +1 -0
- package/dist/awasm/thread/atomic-queue.js +78 -0
- package/dist/awasm/thread/atomic-queue.js.map +1 -0
- package/dist/awasm/thread/index.d.ts +4 -0
- package/dist/awasm/thread/index.d.ts.map +1 -0
- package/dist/awasm/thread/index.js +4 -0
- package/dist/awasm/thread/index.js.map +1 -0
- package/dist/awasm/thread/shared-memory.d.ts +38 -0
- package/dist/awasm/thread/shared-memory.d.ts.map +1 -0
- package/dist/awasm/thread/shared-memory.js +74 -0
- package/dist/awasm/thread/shared-memory.js.map +1 -0
- package/dist/awasm/thread/worker-pool.d.ts +43 -0
- package/dist/awasm/thread/worker-pool.d.ts.map +1 -0
- package/dist/awasm/thread/worker-pool.js +118 -0
- package/dist/awasm/thread/worker-pool.js.map +1 -0
- package/dist/awgpu/binding.d.ts +108 -0
- package/dist/awgpu/binding.d.ts.map +1 -0
- package/dist/awgpu/binding.js +251 -0
- package/dist/awgpu/binding.js.map +1 -0
- package/dist/awgpu/device.d.ts +68 -0
- package/dist/awgpu/device.d.ts.map +1 -0
- package/dist/awgpu/device.js +150 -0
- package/dist/awgpu/device.js.map +1 -0
- package/dist/awgpu/graph.d.ts +77 -0
- package/dist/awgpu/graph.d.ts.map +1 -0
- package/dist/awgpu/graph.js +288 -0
- package/dist/awgpu/graph.js.map +1 -0
- package/dist/awgpu/index.d.ts +10 -0
- package/dist/awgpu/index.d.ts.map +1 -0
- package/dist/awgpu/index.js +19 -0
- package/dist/awgpu/index.js.map +1 -0
- package/dist/awgpu/memory.d.ts +231 -0
- package/dist/awgpu/memory.d.ts.map +1 -0
- package/dist/awgpu/memory.js +547 -0
- package/dist/awgpu/memory.js.map +1 -0
- package/dist/awgpu/pipeline.d.ts +114 -0
- package/dist/awgpu/pipeline.d.ts.map +1 -0
- package/dist/awgpu/pipeline.js +335 -0
- package/dist/awgpu/pipeline.js.map +1 -0
- package/dist/awgpu/sequence.d.ts +83 -0
- package/dist/awgpu/sequence.d.ts.map +1 -0
- package/dist/awgpu/sequence.js +273 -0
- package/dist/awgpu/sequence.js.map +1 -0
- package/dist/awgpu/state.d.ts +27 -0
- package/dist/awgpu/state.d.ts.map +1 -0
- package/dist/awgpu/state.js +43 -0
- package/dist/awgpu/state.js.map +1 -0
- package/dist/awgpu/stream.d.ts +57 -0
- package/dist/awgpu/stream.d.ts.map +1 -0
- package/dist/awgpu/stream.js +139 -0
- package/dist/awgpu/stream.js.map +1 -0
- package/dist/awgpu/target.d.ts +98 -0
- package/dist/awgpu/target.d.ts.map +1 -0
- package/dist/awgpu/target.js +357 -0
- package/dist/awgpu/target.js.map +1 -0
- package/dist/awgpu_old/buffer.d.ts +78 -0
- package/dist/awgpu_old/buffer.d.ts.map +1 -0
- package/dist/awgpu_old/buffer.js +220 -0
- package/dist/awgpu_old/buffer.js.map +1 -0
- package/dist/awgpu_old/device.d.ts +69 -0
- package/dist/awgpu_old/device.d.ts.map +1 -0
- package/dist/awgpu_old/device.js +121 -0
- package/dist/awgpu_old/device.js.map +1 -0
- package/dist/awgpu_old/frame.d.ts +17 -0
- package/dist/awgpu_old/frame.d.ts.map +1 -0
- package/dist/awgpu_old/frame.js +29 -0
- package/dist/awgpu_old/frame.js.map +1 -0
- package/dist/awgpu_old/index.d.ts +8 -0
- package/dist/awgpu_old/index.d.ts.map +1 -0
- package/dist/awgpu_old/index.js +18 -0
- package/dist/awgpu_old/index.js.map +1 -0
- package/dist/awgpu_old/layout.d.ts +70 -0
- package/dist/awgpu_old/layout.d.ts.map +1 -0
- package/dist/awgpu_old/layout.js +137 -0
- package/dist/awgpu_old/layout.js.map +1 -0
- package/dist/awgpu_old/pass.d.ts +97 -0
- package/dist/awgpu_old/pass.d.ts.map +1 -0
- package/dist/awgpu_old/pass.js +302 -0
- package/dist/awgpu_old/pass.js.map +1 -0
- package/dist/awgpu_old/pipeline.d.ts +73 -0
- package/dist/awgpu_old/pipeline.d.ts.map +1 -0
- package/dist/awgpu_old/pipeline.js +226 -0
- package/dist/awgpu_old/pipeline.js.map +1 -0
- package/dist/awgpu_old/target.d.ts +186 -0
- package/dist/awgpu_old/target.d.ts.map +1 -0
- package/dist/awgpu_old/target.js +428 -0
- package/dist/awgpu_old/target.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -0
- package/package.json +106 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Chip } from "./chip.js";
|
|
2
|
+
import type { Circuit } from "./circuit.js";
|
|
3
|
+
import type { ProcessCtx } from "./types.js";
|
|
4
|
+
export interface InputSocketMapping {
|
|
5
|
+
outerSocket: string;
|
|
6
|
+
innerChipId: string;
|
|
7
|
+
innerSocket: string;
|
|
8
|
+
}
|
|
9
|
+
export interface OutputSocketMapping {
|
|
10
|
+
outerSocket: string;
|
|
11
|
+
innerChipId: string;
|
|
12
|
+
innerSocket: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Composite chip encapsulating an inner Circuit graph.
|
|
16
|
+
*/
|
|
17
|
+
export declare class Subcircuit extends Chip {
|
|
18
|
+
readonly innerCircuit: Circuit;
|
|
19
|
+
readonly inputMappings: Map<string, InputSocketMapping>;
|
|
20
|
+
readonly outputMappings: Map<string, OutputSocketMapping>;
|
|
21
|
+
constructor(id: string, name: string, innerCircuit: Circuit);
|
|
22
|
+
/**
|
|
23
|
+
* Maps an external input socket to an internal chip's input socket.
|
|
24
|
+
*/
|
|
25
|
+
mapInput(outerSocketName: string, innerChipId: string, innerSocketName: string, dataType?: string): this;
|
|
26
|
+
/**
|
|
27
|
+
* Maps an internal chip's output socket to an external output socket.
|
|
28
|
+
*/
|
|
29
|
+
mapOutput(outerSocketName: string, innerChipId: string, innerSocketName: string, dataType?: string): this;
|
|
30
|
+
process(inputs: Record<string, any>, ctx?: ProcessCtx<any>): Record<string, any>;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=composite.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"composite.d.ts","sourceRoot":"","sources":["../../acircuit/composite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,WAAW,kBAAkB;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,IAAI;IAChC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,aAAa,kCAAyC;IAC/D,QAAQ,CAAC,cAAc,mCAA0C;gBAErD,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO;IAK3D;;OAEG;IACH,QAAQ,CACJ,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,MAAM,EACvB,QAAQ,CAAC,EAAE,MAAM,GAClB,IAAI;IAmBP;;OAEG;IACH,SAAS,CACL,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,MAAM,EACvB,QAAQ,CAAC,EAAE,MAAM,GAClB,IAAI;IAmBE,OAAO,CACZ,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,GAAG,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,GACtB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAqCzB"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { Chip } from "./chip.js";
|
|
2
|
+
/**
|
|
3
|
+
* Composite chip encapsulating an inner Circuit graph.
|
|
4
|
+
*/
|
|
5
|
+
export class Subcircuit extends Chip {
|
|
6
|
+
innerCircuit;
|
|
7
|
+
inputMappings = new Map();
|
|
8
|
+
outputMappings = new Map();
|
|
9
|
+
constructor(id, name, innerCircuit) {
|
|
10
|
+
super(id, name);
|
|
11
|
+
this.innerCircuit = innerCircuit;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Maps an external input socket to an internal chip's input socket.
|
|
15
|
+
*/
|
|
16
|
+
mapInput(outerSocketName, innerChipId, innerSocketName, dataType) {
|
|
17
|
+
const innerChip = this.innerCircuit.getChip(innerChipId);
|
|
18
|
+
if (!innerChip) {
|
|
19
|
+
throw new Error(`[Subcircuit] Inner chip "${innerChipId}" not found in subcircuit.`);
|
|
20
|
+
}
|
|
21
|
+
const innerSocket = innerChip.getInput(innerSocketName);
|
|
22
|
+
if (!innerSocket) {
|
|
23
|
+
throw new Error(`[Subcircuit] Inner input socket "${innerChipId}:${innerSocketName}" not found.`);
|
|
24
|
+
}
|
|
25
|
+
const effectiveType = dataType ?? innerSocket.dataType;
|
|
26
|
+
this.addInput(outerSocketName, effectiveType);
|
|
27
|
+
this.inputMappings.set(outerSocketName, {
|
|
28
|
+
outerSocket: outerSocketName,
|
|
29
|
+
innerChipId,
|
|
30
|
+
innerSocket: innerSocketName,
|
|
31
|
+
});
|
|
32
|
+
return this;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Maps an internal chip's output socket to an external output socket.
|
|
36
|
+
*/
|
|
37
|
+
mapOutput(outerSocketName, innerChipId, innerSocketName, dataType) {
|
|
38
|
+
const innerChip = this.innerCircuit.getChip(innerChipId);
|
|
39
|
+
if (!innerChip) {
|
|
40
|
+
throw new Error(`[Subcircuit] Inner chip "${innerChipId}" not found in subcircuit.`);
|
|
41
|
+
}
|
|
42
|
+
const innerSocket = innerChip.getOutput(innerSocketName);
|
|
43
|
+
if (!innerSocket) {
|
|
44
|
+
throw new Error(`[Subcircuit] Inner output socket "${innerChipId}:${innerSocketName}" not found.`);
|
|
45
|
+
}
|
|
46
|
+
const effectiveType = dataType ?? innerSocket.dataType;
|
|
47
|
+
this.addOutput(outerSocketName, effectiveType);
|
|
48
|
+
this.outputMappings.set(outerSocketName, {
|
|
49
|
+
outerSocket: outerSocketName,
|
|
50
|
+
innerChipId,
|
|
51
|
+
innerSocket: innerSocketName,
|
|
52
|
+
});
|
|
53
|
+
return this;
|
|
54
|
+
}
|
|
55
|
+
process(inputs, ctx) {
|
|
56
|
+
const overrides = {};
|
|
57
|
+
for (const [outerName, mapping] of this.inputMappings) {
|
|
58
|
+
const val = inputs[outerName];
|
|
59
|
+
if (val !== undefined) {
|
|
60
|
+
let chipOverrides = overrides[mapping.innerChipId];
|
|
61
|
+
if (!chipOverrides) {
|
|
62
|
+
chipOverrides = {};
|
|
63
|
+
overrides[mapping.innerChipId] = chipOverrides;
|
|
64
|
+
}
|
|
65
|
+
chipOverrides[mapping.innerSocket] = val;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
const runResult = this.innerCircuit.run({
|
|
69
|
+
overrides,
|
|
70
|
+
ctx: ctx?.ctx,
|
|
71
|
+
});
|
|
72
|
+
if (runResult.errors.length > 0) {
|
|
73
|
+
const first = runResult.errors[0];
|
|
74
|
+
throw first.error instanceof Error
|
|
75
|
+
? first.error
|
|
76
|
+
: new Error(`[Subcircuit] Inner execution failed on chip "${first.chipId}": ${String(first.error)}`);
|
|
77
|
+
}
|
|
78
|
+
const outputs = {};
|
|
79
|
+
for (const [outerName, mapping] of this.outputMappings) {
|
|
80
|
+
const chipOuts = runResult.outputs.get(mapping.innerChipId);
|
|
81
|
+
if (chipOuts && chipOuts[mapping.innerSocket] !== undefined) {
|
|
82
|
+
outputs[outerName] = chipOuts[mapping.innerSocket];
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
return outputs;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=composite.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"composite.js","sourceRoot":"","sources":["../../acircuit/composite.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { Socket, type SocketDirection, type SocketOptions, } from "./socket.js";
|
|
2
|
+
export { Chip, ChipProxy, } from "./chip.js";
|
|
3
|
+
export { Circuit, type CircuitOptions, } from "./circuit.js";
|
|
4
|
+
export { Subcircuit, type InputSocketMapping, type OutputSocketMapping, } from "./composite.js";
|
|
5
|
+
export { type Wire, inSocketKey, outSocketKey, wireEquals, formatWire, } from "./wire.js";
|
|
6
|
+
export type { ProcessCtx, RunOptions, RunResult, CircuitIssueType, CircuitIssue, CircuitValidationResult, SerializedSocket, SerializedChip, SerializedCircuit, ChipFactory, } from "./types.js";
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../acircuit/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,MAAM,EACN,KAAK,eAAe,EACpB,KAAK,aAAa,GACrB,MAAM,aAAa,CAAC;AACrB,OAAO,EACH,IAAI,EACJ,SAAS,GACZ,MAAM,WAAW,CAAC;AACnB,OAAO,EACH,OAAO,EACP,KAAK,cAAc,GACtB,MAAM,cAAc,CAAC;AACtB,OAAO,EACH,UAAU,EACV,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,GAC3B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACH,KAAK,IAAI,EACT,WAAW,EACX,YAAY,EACZ,UAAU,EACV,UAAU,GACb,MAAM,WAAW,CAAC;AACnB,YAAY,EACR,UAAU,EACV,UAAU,EACV,SAAS,EACT,gBAAgB,EAChB,YAAY,EACZ,uBAAuB,EACvB,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,WAAW,GACd,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { Socket, } from "./socket.js";
|
|
2
|
+
export { Chip, ChipProxy, } from "./chip.js";
|
|
3
|
+
export { Circuit, } from "./circuit.js";
|
|
4
|
+
export { Subcircuit, } from "./composite.js";
|
|
5
|
+
export { inSocketKey, outSocketKey, wireEquals, formatWire, } from "./wire.js";
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../acircuit/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,MAAM,GAGT,MAAM,aAAa,CAAC;AACrB,OAAO,EACH,IAAI,EACJ,SAAS,GACZ,MAAM,WAAW,CAAC;AACnB,OAAO,EACH,OAAO,GAEV,MAAM,cAAc,CAAC;AACtB,OAAO,EACH,UAAU,GAGb,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEH,WAAW,EACX,YAAY,EACZ,UAAU,EACV,UAAU,GACb,MAAM,WAAW,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Communication endpoint direction.
|
|
3
|
+
*/
|
|
4
|
+
export type SocketDirection = "input" | "output";
|
|
5
|
+
export interface SocketOptions {
|
|
6
|
+
dataType?: string;
|
|
7
|
+
required?: boolean;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Communication endpoint on a Chip.
|
|
11
|
+
* Identifies an input or output endpoint on a chip with optional type and requirement tags.
|
|
12
|
+
*/
|
|
13
|
+
export declare class Socket {
|
|
14
|
+
readonly name: string;
|
|
15
|
+
readonly direction: SocketDirection;
|
|
16
|
+
readonly dataType?: string;
|
|
17
|
+
readonly required: boolean;
|
|
18
|
+
constructor(name: string, direction?: SocketDirection, options?: SocketOptions | string);
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=socket.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"socket.d.ts","sourceRoot":"","sources":["../../acircuit/socket.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEjD,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;GAGG;AACH,qBAAa,MAAM;IACf,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;IACpC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;gBAGvB,IAAI,EAAE,MAAM,EACZ,SAAS,GAAE,eAAyB,EACpC,OAAO,GAAE,aAAa,GAAG,MAAW;CAY3C"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Communication endpoint on a Chip.
|
|
3
|
+
* Identifies an input or output endpoint on a chip with optional type and requirement tags.
|
|
4
|
+
*/
|
|
5
|
+
export class Socket {
|
|
6
|
+
name;
|
|
7
|
+
direction;
|
|
8
|
+
dataType;
|
|
9
|
+
required;
|
|
10
|
+
constructor(name, direction = "input", options = {}) {
|
|
11
|
+
this.name = name;
|
|
12
|
+
this.direction = direction;
|
|
13
|
+
if (typeof options === "string") {
|
|
14
|
+
this.dataType = options;
|
|
15
|
+
this.required = true;
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
this.dataType = options.dataType;
|
|
19
|
+
this.required = options.required ?? true;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=socket.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"socket.js","sourceRoot":"","sources":["../../acircuit/socket.ts"],"names":[],"mappings":"AAUA;;;GAGG;AACH,MAAM,OAAO,MAAM;IACN,IAAI,CAAS;IACb,SAAS,CAAkB;IAC3B,QAAQ,CAAU;IAClB,QAAQ,CAAU;IAE3B,YACI,IAAY,EACZ,YAA6B,OAAO,EACpC,UAAkC,EAAE;QAEpC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;YACxB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACzB,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;YACjC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC;QAC7C,CAAC;IACL,CAAC;CACJ"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import type { Wire } from "./wire.js";
|
|
2
|
+
import type { SocketDirection } from "./socket.js";
|
|
3
|
+
import type { Chip } from "./chip.js";
|
|
4
|
+
export type { Wire };
|
|
5
|
+
/**
|
|
6
|
+
* Execution context passed to chip.process(inputs, ctx).
|
|
7
|
+
*/
|
|
8
|
+
export interface ProcessCtx<TCtx = unknown> {
|
|
9
|
+
/** User context forwarded through execution */
|
|
10
|
+
ctx?: TCtx;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Configuration for topological runs.
|
|
14
|
+
*/
|
|
15
|
+
export interface RunOptions<TCtx = unknown, TChip = unknown> {
|
|
16
|
+
/** User context forwarded to chip.process(inputs, ctx) */
|
|
17
|
+
ctx?: TCtx;
|
|
18
|
+
/** Initial input socket values: { [chipId]: { [socketName]: value } } */
|
|
19
|
+
overrides?: Record<string, Record<string, any>>;
|
|
20
|
+
/** Callback invoked before chip execution */
|
|
21
|
+
onChipEnter?: (chip: TChip, inputs: Record<string, any>) => void;
|
|
22
|
+
/** Callback invoked after chip execution */
|
|
23
|
+
onChipLeave?: (chip: TChip, outputs: Record<string, any>) => void;
|
|
24
|
+
/** Callback invoked on wire value resolution */
|
|
25
|
+
onWireTransmit?: (wire: Wire, value: any) => void;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Result of a circuit execution run.
|
|
29
|
+
*/
|
|
30
|
+
export interface RunResult<TChip = unknown> {
|
|
31
|
+
/** Mapping of chip ID to computed output socket records */
|
|
32
|
+
outputs: Map<string, Record<string, any>>;
|
|
33
|
+
/** Chips executed in topological order */
|
|
34
|
+
executedChips: TChip[];
|
|
35
|
+
/** Caught execution errors */
|
|
36
|
+
errors: Array<{
|
|
37
|
+
chipId: string;
|
|
38
|
+
error: unknown;
|
|
39
|
+
}>;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Classification of structural graph validation issue.
|
|
43
|
+
*/
|
|
44
|
+
export type CircuitIssueType = "cycle" | "missing_input" | "type_mismatch" | "isolated_chip";
|
|
45
|
+
/**
|
|
46
|
+
* Diagnostic descriptor representing a validation defect.
|
|
47
|
+
*/
|
|
48
|
+
export interface CircuitIssue {
|
|
49
|
+
type: CircuitIssueType;
|
|
50
|
+
message: string;
|
|
51
|
+
chipId?: string;
|
|
52
|
+
socketName?: string;
|
|
53
|
+
wire?: Wire;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Result of static circuit validation pass.
|
|
57
|
+
*/
|
|
58
|
+
export interface CircuitValidationResult {
|
|
59
|
+
valid: boolean;
|
|
60
|
+
issues: CircuitIssue[];
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Serialized representation of a socket endpoint.
|
|
64
|
+
*/
|
|
65
|
+
export interface SerializedSocket {
|
|
66
|
+
name: string;
|
|
67
|
+
direction: SocketDirection;
|
|
68
|
+
dataType?: string;
|
|
69
|
+
required?: boolean;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Serialized representation of a circuit chip.
|
|
73
|
+
*/
|
|
74
|
+
export interface SerializedChip {
|
|
75
|
+
id: string;
|
|
76
|
+
name: string;
|
|
77
|
+
type?: string;
|
|
78
|
+
inputs: SerializedSocket[];
|
|
79
|
+
outputs: SerializedSocket[];
|
|
80
|
+
metadata?: Record<string, any>;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Serialized representation of an entire circuit topology.
|
|
84
|
+
*/
|
|
85
|
+
export interface SerializedCircuit {
|
|
86
|
+
label: string;
|
|
87
|
+
chips: SerializedChip[];
|
|
88
|
+
wires: Wire[];
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Factory callback instantiating a Chip from serialized data.
|
|
92
|
+
*/
|
|
93
|
+
export type ChipFactory = (serialized: SerializedChip) => Chip;
|
|
94
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../acircuit/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../acircuit/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Directed connection between output socket and input socket in Circuit graph.
|
|
3
|
+
*
|
|
4
|
+
* - Output sockets support 1-to-N fan-out.
|
|
5
|
+
* - Input sockets enforce 1-to-1 connection.
|
|
6
|
+
*/
|
|
7
|
+
export interface Wire {
|
|
8
|
+
readonly outChipId: string;
|
|
9
|
+
readonly outSocket: string;
|
|
10
|
+
readonly inChipId: string;
|
|
11
|
+
readonly inSocket: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Returns the lookup key for a socket endpoint.
|
|
15
|
+
*/
|
|
16
|
+
export declare function inSocketKey(chipId: string, socketName: string): string;
|
|
17
|
+
export declare const outSocketKey: typeof inSocketKey;
|
|
18
|
+
/**
|
|
19
|
+
* Compares two Wire instances for matching endpoints.
|
|
20
|
+
*/
|
|
21
|
+
export declare function wireEquals(a: Wire, b: Wire): boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Formats a Wire as (outChip:outSocket -> inChip:inSocket).
|
|
24
|
+
*/
|
|
25
|
+
export declare function formatWire(wire: Wire): string;
|
|
26
|
+
//# sourceMappingURL=wire.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wire.d.ts","sourceRoot":"","sources":["../../acircuit/wire.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,IAAI;IACjB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEtE;AAED,eAAO,MAAM,YAAY,oBAAc,CAAC;AAExC;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,GAAG,OAAO,CAOpD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAE7C"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns the lookup key for a socket endpoint.
|
|
3
|
+
*/
|
|
4
|
+
export function inSocketKey(chipId, socketName) {
|
|
5
|
+
return `${chipId}:${socketName}`;
|
|
6
|
+
}
|
|
7
|
+
export const outSocketKey = inSocketKey;
|
|
8
|
+
/**
|
|
9
|
+
* Compares two Wire instances for matching endpoints.
|
|
10
|
+
*/
|
|
11
|
+
export function wireEquals(a, b) {
|
|
12
|
+
return (a.outChipId === b.outChipId &&
|
|
13
|
+
a.outSocket === b.outSocket &&
|
|
14
|
+
a.inChipId === b.inChipId &&
|
|
15
|
+
a.inSocket === b.inSocket);
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Formats a Wire as (outChip:outSocket -> inChip:inSocket).
|
|
19
|
+
*/
|
|
20
|
+
export function formatWire(wire) {
|
|
21
|
+
return `(${wire.outChipId}:${wire.outSocket} -> ${wire.inChipId}:${wire.inSocket})`;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=wire.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wire.js","sourceRoot":"","sources":["../../acircuit/wire.ts"],"names":[],"mappings":"AAaA;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,MAAc,EAAE,UAAkB;IAC1D,OAAO,GAAG,MAAM,IAAI,UAAU,EAAE,CAAC;AACrC,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,WAAW,CAAC;AAExC;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,CAAO,EAAE,CAAO;IACvC,OAAO,CACH,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,SAAS;QAC3B,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,SAAS;QAC3B,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ;QACzB,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ,CAC5B,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,IAAU;IACjC,OAAO,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC;AACxF,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
export type Type = "ok" | "err" | "warn" | "info" | string;
|
|
2
|
+
export interface Result {
|
|
3
|
+
type: Type;
|
|
4
|
+
code: string;
|
|
5
|
+
raw: string;
|
|
6
|
+
data: unknown;
|
|
7
|
+
ref?: Result | null;
|
|
8
|
+
}
|
|
9
|
+
export interface AddArgs {
|
|
10
|
+
code?: string;
|
|
11
|
+
raw?: string;
|
|
12
|
+
data?: unknown;
|
|
13
|
+
ref?: Result | null;
|
|
14
|
+
}
|
|
15
|
+
export declare class Bus {
|
|
16
|
+
#private;
|
|
17
|
+
state: Record<string, unknown>;
|
|
18
|
+
readonly maxHistory: number;
|
|
19
|
+
private readonly _listeners;
|
|
20
|
+
static readonly TYPE_OK = "ok";
|
|
21
|
+
static readonly TYPE_ERR = "err";
|
|
22
|
+
static readonly TYPE_WARN = "warn";
|
|
23
|
+
static readonly TYPE_INFO = "info";
|
|
24
|
+
constructor(maxHistory?: number);
|
|
25
|
+
get results(): Result[];
|
|
26
|
+
set results(items: Result[]);
|
|
27
|
+
ok(args?: AddArgs): Result;
|
|
28
|
+
err(args?: AddArgs): Result;
|
|
29
|
+
warn(args?: AddArgs): Result;
|
|
30
|
+
info(args?: AddArgs): Result;
|
|
31
|
+
/**
|
|
32
|
+
* Subscribes to diagnostic records of specified category type, or '*' for all records.
|
|
33
|
+
* Returns an unsubscribe function.
|
|
34
|
+
*/
|
|
35
|
+
on(type: Type | "*", listener: (result: Result) => void): () => void;
|
|
36
|
+
onError(listener: (result: Result) => void): () => void;
|
|
37
|
+
onWarn(listener: (result: Result) => void): () => void;
|
|
38
|
+
clear(): void;
|
|
39
|
+
last(): Result | null;
|
|
40
|
+
lastErr(): Result | null;
|
|
41
|
+
allOk(): boolean;
|
|
42
|
+
private _findType;
|
|
43
|
+
findOk(): Result[];
|
|
44
|
+
hasErrs(): boolean;
|
|
45
|
+
findErrs(): Result[];
|
|
46
|
+
hasWarns(): boolean;
|
|
47
|
+
findWarns(): Result[];
|
|
48
|
+
hasInfos(): boolean;
|
|
49
|
+
findInfos(): Result[];
|
|
50
|
+
/**
|
|
51
|
+
* Extracts the causal reference chain starting from `result` in order of causality.
|
|
52
|
+
*/
|
|
53
|
+
static getCauseChain(result: Result | null | undefined): Result[];
|
|
54
|
+
static compileMsg(raw?: string, data?: Record<string, unknown>): string;
|
|
55
|
+
/**
|
|
56
|
+
* Formats diagnostic result into human-readable string with causal chain details.
|
|
57
|
+
*/
|
|
58
|
+
static formatResult(result: Result): string;
|
|
59
|
+
static resultToMsg(result: Result): string;
|
|
60
|
+
/**
|
|
61
|
+
* Compiles full message including causal chain explanations
|
|
62
|
+
*/
|
|
63
|
+
static resultToChainMsg(result: Result): string;
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=bus.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bus.d.ts","sourceRoot":"","sources":["../../adiag/bus.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAE3D,MAAM,WAAW,MAAM;IACnB,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,OAAO,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,MAAM,WAAW,OAAO;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAID,qBAAa,GAAG;;IACZ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAK5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoD;IAE/E,MAAM,CAAC,QAAQ,CAAC,OAAO,QAAU;IACjC,MAAM,CAAC,QAAQ,CAAC,QAAQ,SAAU;IAClC,MAAM,CAAC,QAAQ,CAAC,SAAS,UAAU;IACnC,MAAM,CAAC,QAAQ,CAAC,SAAS,UAAU;gBAEvB,UAAU,SAAO;IAK7B,IAAI,OAAO,IAAI,MAAM,EAAE,CAQtB;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,EAM1B;IAED,EAAE,CAAC,IAAI,GAAE,OAAY,GAAK,MAAM;IAChC,GAAG,CAAC,IAAI,GAAE,OAAY,GAAI,MAAM;IAChC,IAAI,CAAC,IAAI,GAAE,OAAY,GAAG,MAAM;IAChC,IAAI,CAAC,IAAI,GAAE,OAAY,GAAG,MAAM;IAEhC;;;OAGG;IACH,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,GAAG,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAapE,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAIvD,MAAM,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAwBtD,KAAK,IAAI,IAAI;IAMb,IAAI,IAAI,MAAM,GAAG,IAAI;IAMrB,OAAO,IAAI,MAAM,GAAG,IAAI;IAWxB,KAAK,IAAI,OAAO;IAShB,OAAO,CAAC,SAAS;IAajB,MAAM,IAAI,MAAM,EAAE;IAIlB,OAAO,IAAI,OAAO;IAIlB,QAAQ,IAAI,MAAM,EAAE;IAIpB,QAAQ,IAAI,OAAO;IASnB,SAAS,IAAI,MAAM,EAAE;IAIrB,QAAQ,IAAI,OAAO;IASnB,SAAS,IAAI,MAAM,EAAE;IAIrB;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,EAAE;IAkBjE,MAAM,CAAC,UAAU,CAAC,GAAG,SAAK,EAAE,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,MAAM;IA2BvE;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAM3C,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAI1C;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CAIlD"}
|