@agentick/core 0.0.1
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 +875 -0
- package/dist/.tsbuildinfo +1 -0
- package/dist/.tsbuildinfo.build +1 -0
- package/dist/agent.d.ts +32 -0
- package/dist/agent.d.ts.map +1 -0
- package/dist/agent.js +26 -0
- package/dist/agent.js.map +1 -0
- package/dist/agentick-instance.d.ts +285 -0
- package/dist/agentick-instance.d.ts.map +1 -0
- package/dist/agentick-instance.js +700 -0
- package/dist/agentick-instance.js.map +1 -0
- package/dist/aidk-instance.d.ts +294 -0
- package/dist/aidk-instance.d.ts.map +1 -0
- package/dist/aidk-instance.js +340 -0
- package/dist/aidk-instance.js.map +1 -0
- package/dist/app/session-store.d.ts +57 -0
- package/dist/app/session-store.d.ts.map +1 -0
- package/dist/app/session-store.js +87 -0
- package/dist/app/session-store.js.map +1 -0
- package/dist/app/session.d.ts +209 -0
- package/dist/app/session.d.ts.map +1 -0
- package/dist/app/session.js +2131 -0
- package/dist/app/session.js.map +1 -0
- package/dist/app/sqlite-session-store.d.ts +60 -0
- package/dist/app/sqlite-session-store.d.ts.map +1 -0
- package/dist/app/sqlite-session-store.js +234 -0
- package/dist/app/sqlite-session-store.js.map +1 -0
- package/dist/app/types.d.ts +1461 -0
- package/dist/app/types.d.ts.map +1 -0
- package/dist/app/types.js +14 -0
- package/dist/app/types.js.map +1 -0
- package/dist/app.d.ts +79 -0
- package/dist/app.d.ts.map +1 -0
- package/dist/app.js +83 -0
- package/dist/app.js.map +1 -0
- package/dist/channels/adapters/index.d.ts +2 -0
- package/dist/channels/adapters/index.d.ts.map +1 -0
- package/dist/channels/adapters/index.js +2 -0
- package/dist/channels/adapters/index.js.map +1 -0
- package/dist/channels/adapters/redis.d.ts +77 -0
- package/dist/channels/adapters/redis.d.ts.map +1 -0
- package/dist/channels/adapters/redis.js +259 -0
- package/dist/channels/adapters/redis.js.map +1 -0
- package/dist/channels/index.d.ts +38 -0
- package/dist/channels/index.d.ts.map +1 -0
- package/dist/channels/index.js +38 -0
- package/dist/channels/index.js.map +1 -0
- package/dist/channels/service.d.ts +684 -0
- package/dist/channels/service.d.ts.map +1 -0
- package/dist/channels/service.js +870 -0
- package/dist/channels/service.js.map +1 -0
- package/dist/channels/transports/index.d.ts +4 -0
- package/dist/channels/transports/index.d.ts.map +1 -0
- package/dist/channels/transports/index.js +4 -0
- package/dist/channels/transports/index.js.map +1 -0
- package/dist/channels/transports/socketio.d.ts +98 -0
- package/dist/channels/transports/socketio.d.ts.map +1 -0
- package/dist/channels/transports/socketio.js +246 -0
- package/dist/channels/transports/socketio.js.map +1 -0
- package/dist/channels/transports/streamable-http.d.ts +107 -0
- package/dist/channels/transports/streamable-http.d.ts.map +1 -0
- package/dist/channels/transports/streamable-http.js +353 -0
- package/dist/channels/transports/streamable-http.js.map +1 -0
- package/dist/channels/transports/websocket.d.ts +117 -0
- package/dist/channels/transports/websocket.d.ts.map +1 -0
- package/dist/channels/transports/websocket.js +416 -0
- package/dist/channels/transports/websocket.js.map +1 -0
- package/dist/com/index.d.ts +29 -0
- package/dist/com/index.d.ts.map +1 -0
- package/dist/com/index.js +29 -0
- package/dist/com/index.js.map +1 -0
- package/dist/com/object-model.d.ts +634 -0
- package/dist/com/object-model.d.ts.map +1 -0
- package/dist/com/object-model.js +963 -0
- package/dist/com/object-model.js.map +1 -0
- package/dist/com/types.d.ts +192 -0
- package/dist/com/types.d.ts.map +1 -0
- package/dist/com/types.js +1 -0
- package/dist/com/types.js.map +1 -0
- package/dist/compiler/collector.d.ts +16 -0
- package/dist/compiler/collector.d.ts.map +1 -0
- package/dist/compiler/collector.js +388 -0
- package/dist/compiler/collector.js.map +1 -0
- package/dist/compiler/content-block-registry.d.ts +11 -0
- package/dist/compiler/content-block-registry.d.ts.map +1 -0
- package/dist/compiler/content-block-registry.js +312 -0
- package/dist/compiler/content-block-registry.js.map +1 -0
- package/dist/compiler/extractors.d.ts +68 -0
- package/dist/compiler/extractors.d.ts.map +1 -0
- package/dist/compiler/extractors.js +547 -0
- package/dist/compiler/extractors.js.map +1 -0
- package/dist/compiler/fiber-compiler.d.ts +203 -0
- package/dist/compiler/fiber-compiler.d.ts.map +1 -0
- package/dist/compiler/fiber-compiler.js +498 -0
- package/dist/compiler/fiber-compiler.js.map +1 -0
- package/dist/compiler/fiber.d.ts +61 -0
- package/dist/compiler/fiber.d.ts.map +1 -0
- package/dist/compiler/fiber.js +244 -0
- package/dist/compiler/fiber.js.map +1 -0
- package/dist/compiler/index.d.ts +18 -0
- package/dist/compiler/index.d.ts.map +1 -0
- package/dist/compiler/index.js +38 -0
- package/dist/compiler/index.js.map +1 -0
- package/dist/compiler/scheduler.d.ts +95 -0
- package/dist/compiler/scheduler.d.ts.map +1 -0
- package/dist/compiler/scheduler.js +138 -0
- package/dist/compiler/scheduler.js.map +1 -0
- package/dist/compiler/structure-renderer.d.ts +42 -0
- package/dist/compiler/structure-renderer.d.ts.map +1 -0
- package/dist/compiler/structure-renderer.js +189 -0
- package/dist/compiler/structure-renderer.js.map +1 -0
- package/dist/compiler/types.d.ts +96 -0
- package/dist/compiler/types.d.ts.map +1 -0
- package/dist/compiler/types.js +19 -0
- package/dist/compiler/types.js.map +1 -0
- package/dist/component/component-hooks.d.ts +68 -0
- package/dist/component/component-hooks.d.ts.map +1 -0
- package/dist/component/component-hooks.js +112 -0
- package/dist/component/component-hooks.js.map +1 -0
- package/dist/component/component.d.ts +314 -0
- package/dist/component/component.d.ts.map +1 -0
- package/dist/component/component.js +64 -0
- package/dist/component/component.js.map +1 -0
- package/dist/component/index.d.ts +47 -0
- package/dist/component/index.d.ts.map +1 -0
- package/dist/component/index.js +47 -0
- package/dist/component/index.js.map +1 -0
- package/dist/component/tentickle-component.d.ts +185 -0
- package/dist/component/tentickle-component.d.ts.map +1 -0
- package/dist/component/tentickle-component.js +182 -0
- package/dist/component/tentickle-component.js.map +1 -0
- package/dist/content/index.d.ts +12 -0
- package/dist/content/index.d.ts.map +1 -0
- package/dist/content/index.js +17 -0
- package/dist/content/index.js.map +1 -0
- package/dist/context/index.d.ts +51 -0
- package/dist/context/index.d.ts.map +1 -0
- package/dist/context/index.js +69 -0
- package/dist/context/index.js.map +1 -0
- package/dist/core/channel-helpers.d.ts +31 -0
- package/dist/core/channel-helpers.d.ts.map +1 -0
- package/dist/core/channel-helpers.js +62 -0
- package/dist/core/channel-helpers.js.map +1 -0
- package/dist/core/channel.d.ts +164 -0
- package/dist/core/channel.d.ts.map +1 -0
- package/dist/core/channel.js +199 -0
- package/dist/core/channel.js.map +1 -0
- package/dist/core/context.d.ts +412 -0
- package/dist/core/context.d.ts.map +1 -0
- package/dist/core/context.js +290 -0
- package/dist/core/context.js.map +1 -0
- package/dist/core/event-buffer.d.ts +212 -0
- package/dist/core/event-buffer.d.ts.map +1 -0
- package/dist/core/event-buffer.js +346 -0
- package/dist/core/event-buffer.js.map +1 -0
- package/dist/core/execution-helpers.d.ts +179 -0
- package/dist/core/execution-helpers.d.ts.map +1 -0
- package/dist/core/execution-helpers.js +212 -0
- package/dist/core/execution-helpers.js.map +1 -0
- package/dist/core/execution-tracker.d.ts +53 -0
- package/dist/core/execution-tracker.d.ts.map +1 -0
- package/dist/core/execution-tracker.js +309 -0
- package/dist/core/execution-tracker.js.map +1 -0
- package/dist/core/index.d.ts +58 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +58 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/logger.d.ts +341 -0
- package/dist/core/logger.d.ts.map +1 -0
- package/dist/core/logger.js +346 -0
- package/dist/core/logger.js.map +1 -0
- package/dist/core/metrics-helpers.d.ts +40 -0
- package/dist/core/metrics-helpers.d.ts.map +1 -0
- package/dist/core/metrics-helpers.js +72 -0
- package/dist/core/metrics-helpers.js.map +1 -0
- package/dist/core/otel-provider.d.ts +54 -0
- package/dist/core/otel-provider.d.ts.map +1 -0
- package/dist/core/otel-provider.js +107 -0
- package/dist/core/otel-provider.js.map +1 -0
- package/dist/core/procedure-graph.d.ts +136 -0
- package/dist/core/procedure-graph.d.ts.map +1 -0
- package/dist/core/procedure-graph.js +272 -0
- package/dist/core/procedure-graph.js.map +1 -0
- package/dist/core/procedure.d.ts +755 -0
- package/dist/core/procedure.d.ts.map +1 -0
- package/dist/core/procedure.js +899 -0
- package/dist/core/procedure.js.map +1 -0
- package/dist/core/stream.d.ts +106 -0
- package/dist/core/stream.d.ts.map +1 -0
- package/dist/core/stream.js +186 -0
- package/dist/core/stream.js.map +1 -0
- package/dist/core/telemetry.d.ts +182 -0
- package/dist/core/telemetry.d.ts.map +1 -0
- package/dist/core/telemetry.js +124 -0
- package/dist/core/telemetry.js.map +1 -0
- package/dist/engine/client-tool-coordinator.d.ts +50 -0
- package/dist/engine/client-tool-coordinator.d.ts.map +1 -0
- package/dist/engine/client-tool-coordinator.js +121 -0
- package/dist/engine/client-tool-coordinator.js.map +1 -0
- package/dist/engine/engine-events.d.ts +117 -0
- package/dist/engine/engine-events.d.ts.map +1 -0
- package/dist/engine/engine-events.js +178 -0
- package/dist/engine/engine-events.js.map +1 -0
- package/dist/engine/engine-response.d.ts +48 -0
- package/dist/engine/engine-response.d.ts.map +1 -0
- package/dist/engine/engine-response.js +2 -0
- package/dist/engine/engine-response.js.map +1 -0
- package/dist/engine/execution-graph.d.ts +104 -0
- package/dist/engine/execution-graph.d.ts.map +1 -0
- package/dist/engine/execution-graph.js +257 -0
- package/dist/engine/execution-graph.js.map +1 -0
- package/dist/engine/execution-handle.d.ts +212 -0
- package/dist/engine/execution-handle.d.ts.map +1 -0
- package/dist/engine/execution-handle.js +602 -0
- package/dist/engine/execution-handle.js.map +1 -0
- package/dist/engine/execution-types.d.ts +248 -0
- package/dist/engine/execution-types.d.ts.map +1 -0
- package/dist/engine/execution-types.js +23 -0
- package/dist/engine/execution-types.js.map +1 -0
- package/dist/engine/index.d.ts +21 -0
- package/dist/engine/index.d.ts.map +1 -0
- package/dist/engine/index.js +23 -0
- package/dist/engine/index.js.map +1 -0
- package/dist/engine/tool-confirmation-coordinator.d.ts +74 -0
- package/dist/engine/tool-confirmation-coordinator.d.ts.map +1 -0
- package/dist/engine/tool-confirmation-coordinator.js +137 -0
- package/dist/engine/tool-confirmation-coordinator.js.map +1 -0
- package/dist/engine/tool-executor.d.ts +127 -0
- package/dist/engine/tool-executor.d.ts.map +1 -0
- package/dist/engine/tool-executor.js +363 -0
- package/dist/engine/tool-executor.js.map +1 -0
- package/dist/hibernation/index.d.ts +126 -0
- package/dist/hibernation/index.d.ts.map +1 -0
- package/dist/hibernation/index.js +127 -0
- package/dist/hibernation/index.js.map +1 -0
- package/dist/hooks/base-hook-registry.d.ts +41 -0
- package/dist/hooks/base-hook-registry.d.ts.map +1 -0
- package/dist/hooks/base-hook-registry.js +76 -0
- package/dist/hooks/base-hook-registry.js.map +1 -0
- package/dist/hooks/com-state.d.ts +40 -0
- package/dist/hooks/com-state.d.ts.map +1 -0
- package/dist/hooks/com-state.js +90 -0
- package/dist/hooks/com-state.js.map +1 -0
- package/dist/hooks/context-info.d.ts +139 -0
- package/dist/hooks/context-info.d.ts.map +1 -0
- package/dist/hooks/context-info.js +115 -0
- package/dist/hooks/context-info.js.map +1 -0
- package/dist/hooks/context-internal.d.ts +21 -0
- package/dist/hooks/context-internal.d.ts.map +1 -0
- package/dist/hooks/context-internal.js +20 -0
- package/dist/hooks/context-internal.js.map +1 -0
- package/dist/hooks/context.d.ts +64 -0
- package/dist/hooks/context.d.ts.map +1 -0
- package/dist/hooks/context.js +83 -0
- package/dist/hooks/context.js.map +1 -0
- package/dist/hooks/data.d.ts +33 -0
- package/dist/hooks/data.d.ts.map +1 -0
- package/dist/hooks/data.js +84 -0
- package/dist/hooks/data.js.map +1 -0
- package/dist/hooks/formatter-context.d.ts +34 -0
- package/dist/hooks/formatter-context.d.ts.map +1 -0
- package/dist/hooks/formatter-context.js +34 -0
- package/dist/hooks/formatter-context.js.map +1 -0
- package/dist/hooks/hook-registry.d.ts +45 -0
- package/dist/hooks/hook-registry.d.ts.map +1 -0
- package/dist/hooks/hook-registry.js +109 -0
- package/dist/hooks/hook-registry.js.map +1 -0
- package/dist/hooks/index.d.ts +20 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +47 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/knob.d.ts +87 -0
- package/dist/hooks/knob.d.ts.map +1 -0
- package/dist/hooks/knob.js +129 -0
- package/dist/hooks/knob.js.map +1 -0
- package/dist/hooks/knobs-component.d.ts +70 -0
- package/dist/hooks/knobs-component.d.ts.map +1 -0
- package/dist/hooks/knobs-component.js +300 -0
- package/dist/hooks/knobs-component.js.map +1 -0
- package/dist/hooks/lifecycle.d.ts +158 -0
- package/dist/hooks/lifecycle.d.ts.map +1 -0
- package/dist/hooks/lifecycle.js +217 -0
- package/dist/hooks/lifecycle.js.map +1 -0
- package/dist/hooks/message-context.d.ts +101 -0
- package/dist/hooks/message-context.d.ts.map +1 -0
- package/dist/hooks/message-context.js +145 -0
- package/dist/hooks/message-context.js.map +1 -0
- package/dist/hooks/policy-context.d.ts.map +1 -0
- package/dist/hooks/runtime-context.d.ts +122 -0
- package/dist/hooks/runtime-context.d.ts.map +1 -0
- package/dist/hooks/runtime-context.js +149 -0
- package/dist/hooks/runtime-context.js.map +1 -0
- package/dist/hooks/signal.d.ts +267 -0
- package/dist/hooks/signal.d.ts.map +1 -0
- package/dist/hooks/signal.js +825 -0
- package/dist/hooks/signal.js.map +1 -0
- package/dist/hooks/types.d.ts +179 -0
- package/dist/hooks/types.d.ts.map +1 -0
- package/dist/hooks/types.js +5 -0
- package/dist/hooks/types.js.map +1 -0
- package/dist/index.d.ts +20 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +50 -0
- package/dist/index.js.map +1 -0
- package/dist/jsx/components/agent.d.ts +64 -0
- package/dist/jsx/components/agent.d.ts.map +1 -0
- package/dist/jsx/components/agent.js +80 -0
- package/dist/jsx/components/agent.js.map +1 -0
- package/dist/jsx/components/complete.d.ts +65 -0
- package/dist/jsx/components/complete.d.ts.map +1 -0
- package/dist/jsx/components/complete.js +64 -0
- package/dist/jsx/components/complete.js.map +1 -0
- package/dist/jsx/components/content.d.ts +98 -0
- package/dist/jsx/components/content.d.ts.map +1 -0
- package/dist/jsx/components/content.js +51 -0
- package/dist/jsx/components/content.js.map +1 -0
- package/dist/jsx/components/harness.d.ts +118 -0
- package/dist/jsx/components/harness.d.ts.map +1 -0
- package/dist/jsx/components/harness.js +117 -0
- package/dist/jsx/components/harness.js.map +1 -0
- package/dist/jsx/components/index.d.ts +11 -0
- package/dist/jsx/components/index.d.ts.map +1 -0
- package/dist/jsx/components/index.js +11 -0
- package/dist/jsx/components/index.js.map +1 -0
- package/dist/jsx/components/markdown.d.ts +31 -0
- package/dist/jsx/components/markdown.d.ts.map +1 -0
- package/dist/jsx/components/markdown.js +17 -0
- package/dist/jsx/components/markdown.js.map +1 -0
- package/dist/jsx/components/messages.d.ts +283 -0
- package/dist/jsx/components/messages.d.ts.map +1 -0
- package/dist/jsx/components/messages.js +257 -0
- package/dist/jsx/components/messages.js.map +1 -0
- package/dist/jsx/components/model.d.ts +94 -0
- package/dist/jsx/components/model.d.ts.map +1 -0
- package/dist/jsx/components/model.js +96 -0
- package/dist/jsx/components/model.js.map +1 -0
- package/dist/jsx/components/primitives.d.ts +117 -0
- package/dist/jsx/components/primitives.d.ts.map +1 -0
- package/dist/jsx/components/primitives.js +83 -0
- package/dist/jsx/components/primitives.js.map +1 -0
- package/dist/jsx/components/renderer.d.ts +24 -0
- package/dist/jsx/components/renderer.d.ts.map +1 -0
- package/dist/jsx/components/renderer.js +11 -0
- package/dist/jsx/components/renderer.js.map +1 -0
- package/dist/jsx/components/semantic.d.ts +155 -0
- package/dist/jsx/components/semantic.d.ts.map +1 -0
- package/dist/jsx/components/semantic.js +39 -0
- package/dist/jsx/components/semantic.js.map +1 -0
- package/dist/jsx/components/timeline.d.ts +157 -0
- package/dist/jsx/components/timeline.d.ts.map +1 -0
- package/dist/jsx/components/timeline.js +357 -0
- package/dist/jsx/components/timeline.js.map +1 -0
- package/dist/jsx/components/token-budget.d.ts +70 -0
- package/dist/jsx/components/token-budget.d.ts.map +1 -0
- package/dist/jsx/components/token-budget.js +135 -0
- package/dist/jsx/components/token-budget.js.map +1 -0
- package/dist/jsx/components/xml.d.ts +27 -0
- package/dist/jsx/components/xml.d.ts.map +1 -0
- package/dist/jsx/components/xml.js +17 -0
- package/dist/jsx/components/xml.js.map +1 -0
- package/dist/jsx/index.d.ts +58 -0
- package/dist/jsx/index.d.ts.map +1 -0
- package/dist/jsx/index.js +59 -0
- package/dist/jsx/index.js.map +1 -0
- package/dist/jsx/jsx-runtime.d.ts +370 -0
- package/dist/jsx/jsx-runtime.d.ts.map +1 -0
- package/dist/jsx/jsx-runtime.js +79 -0
- package/dist/jsx/jsx-runtime.js.map +1 -0
- package/dist/jsx/jsx-types.d.ts +23 -0
- package/dist/jsx/jsx-types.d.ts.map +1 -0
- package/dist/jsx/jsx-types.js +1 -0
- package/dist/jsx/jsx-types.js.map +1 -0
- package/dist/mcp/client.d.ts +46 -0
- package/dist/mcp/client.d.ts.map +1 -0
- package/dist/mcp/client.js +138 -0
- package/dist/mcp/client.js.map +1 -0
- package/dist/mcp/component.d.ts +95 -0
- package/dist/mcp/component.d.ts.map +1 -0
- package/dist/mcp/component.js +185 -0
- package/dist/mcp/component.js.map +1 -0
- package/dist/mcp/create-mcp-tool.d.ts +191 -0
- package/dist/mcp/create-mcp-tool.d.ts.map +1 -0
- package/dist/mcp/create-mcp-tool.js +228 -0
- package/dist/mcp/create-mcp-tool.js.map +1 -0
- package/dist/mcp/index.d.ts +49 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +48 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/service.d.ts +39 -0
- package/dist/mcp/service.d.ts.map +1 -0
- package/dist/mcp/service.js +77 -0
- package/dist/mcp/service.js.map +1 -0
- package/dist/mcp/tool.d.ts +55 -0
- package/dist/mcp/tool.d.ts.map +1 -0
- package/dist/mcp/tool.js +119 -0
- package/dist/mcp/tool.js.map +1 -0
- package/dist/mcp/types.d.ts +72 -0
- package/dist/mcp/types.d.ts.map +1 -0
- package/dist/mcp/types.js +6 -0
- package/dist/mcp/types.js.map +1 -0
- package/dist/middleware/defaults.d.ts +9 -0
- package/dist/middleware/defaults.d.ts.map +1 -0
- package/dist/middleware/defaults.js +47 -0
- package/dist/middleware/defaults.js.map +1 -0
- package/dist/model/adapter-helpers.d.ts +161 -0
- package/dist/model/adapter-helpers.d.ts.map +1 -0
- package/dist/model/adapter-helpers.js +351 -0
- package/dist/model/adapter-helpers.js.map +1 -0
- package/dist/model/adapter.d.ts +399 -0
- package/dist/model/adapter.d.ts.map +1 -0
- package/dist/model/adapter.js +497 -0
- package/dist/model/adapter.js.map +1 -0
- package/dist/model/index.d.ts +54 -0
- package/dist/model/index.d.ts.map +1 -0
- package/dist/model/index.js +55 -0
- package/dist/model/index.js.map +1 -0
- package/dist/model/model-hooks.d.ts +45 -0
- package/dist/model/model-hooks.d.ts.map +1 -0
- package/dist/model/model-hooks.js +24 -0
- package/dist/model/model-hooks.js.map +1 -0
- package/dist/model/model.d.ts +302 -0
- package/dist/model/model.d.ts.map +1 -0
- package/dist/model/model.js +20 -0
- package/dist/model/model.js.map +1 -0
- package/dist/model/simple-adapter.d.ts +176 -0
- package/dist/model/simple-adapter.d.ts.map +1 -0
- package/dist/model/simple-adapter.js +264 -0
- package/dist/model/simple-adapter.js.map +1 -0
- package/dist/model/stream-accumulator.d.ts +284 -0
- package/dist/model/stream-accumulator.d.ts.map +1 -0
- package/dist/model/stream-accumulator.js +532 -0
- package/dist/model/stream-accumulator.js.map +1 -0
- package/dist/model/utils/index.d.ts +2 -0
- package/dist/model/utils/index.d.ts.map +1 -0
- package/dist/model/utils/index.js +2 -0
- package/dist/model/utils/index.js.map +1 -0
- package/dist/model/utils/language-model.d.ts +26 -0
- package/dist/model/utils/language-model.d.ts.map +1 -0
- package/dist/model/utils/language-model.js +706 -0
- package/dist/model/utils/language-model.js.map +1 -0
- package/dist/procedure/index.d.ts +20 -0
- package/dist/procedure/index.d.ts.map +1 -0
- package/dist/procedure/index.js +19 -0
- package/dist/procedure/index.js.map +1 -0
- package/dist/reconciler/devtools-bridge.d.ts +40 -0
- package/dist/reconciler/devtools-bridge.d.ts.map +1 -0
- package/dist/reconciler/devtools-bridge.js +79 -0
- package/dist/reconciler/devtools-bridge.js.map +1 -0
- package/dist/reconciler/host-config.d.ts +39 -0
- package/dist/reconciler/host-config.d.ts.map +1 -0
- package/dist/reconciler/host-config.js +195 -0
- package/dist/reconciler/host-config.js.map +1 -0
- package/dist/reconciler/index.d.ts +7 -0
- package/dist/reconciler/index.d.ts.map +1 -0
- package/dist/reconciler/index.js +7 -0
- package/dist/reconciler/index.js.map +1 -0
- package/dist/reconciler/reconciler.d.ts +47 -0
- package/dist/reconciler/reconciler.d.ts.map +1 -0
- package/dist/reconciler/reconciler.js +89 -0
- package/dist/reconciler/reconciler.js.map +1 -0
- package/dist/reconciler/types.d.ts +86 -0
- package/dist/reconciler/types.d.ts.map +1 -0
- package/dist/reconciler/types.js +37 -0
- package/dist/reconciler/types.js.map +1 -0
- package/dist/renderers/base.d.ts +98 -0
- package/dist/renderers/base.d.ts.map +1 -0
- package/dist/renderers/base.js +82 -0
- package/dist/renderers/base.js.map +1 -0
- package/dist/renderers/index.d.ts +31 -0
- package/dist/renderers/index.d.ts.map +1 -0
- package/dist/renderers/index.js +31 -0
- package/dist/renderers/index.js.map +1 -0
- package/dist/renderers/markdown.d.ts +48 -0
- package/dist/renderers/markdown.d.ts.map +1 -0
- package/dist/renderers/markdown.js +432 -0
- package/dist/renderers/markdown.js.map +1 -0
- package/dist/renderers/types.d.ts +7 -0
- package/dist/renderers/types.d.ts.map +1 -0
- package/dist/renderers/types.js +7 -0
- package/dist/renderers/types.js.map +1 -0
- package/dist/renderers/xml.d.ts +49 -0
- package/dist/renderers/xml.d.ts.map +1 -0
- package/dist/renderers/xml.js +444 -0
- package/dist/renderers/xml.js.map +1 -0
- package/dist/state/boundary.d.ts +347 -0
- package/dist/state/boundary.d.ts.map +1 -0
- package/dist/state/boundary.js +341 -0
- package/dist/state/boundary.js.map +1 -0
- package/dist/state/context.d.ts +138 -0
- package/dist/state/context.d.ts.map +1 -0
- package/dist/state/context.js +139 -0
- package/dist/state/context.js.map +1 -0
- package/dist/state/hooks.d.ts +798 -0
- package/dist/state/hooks.d.ts.map +1 -0
- package/dist/state/hooks.js +1437 -0
- package/dist/state/hooks.js.map +1 -0
- package/dist/state/index.d.ts +72 -0
- package/dist/state/index.d.ts.map +1 -0
- package/dist/state/index.js +73 -0
- package/dist/state/index.js.map +1 -0
- package/dist/state/signal.d.ts +223 -0
- package/dist/state/signal.d.ts.map +1 -0
- package/dist/state/signal.js +699 -0
- package/dist/state/signal.js.map +1 -0
- package/dist/state/use-state.d.ts +210 -0
- package/dist/state/use-state.d.ts.map +1 -0
- package/dist/state/use-state.js +327 -0
- package/dist/state/use-state.js.map +1 -0
- package/dist/tentickle-instance.d.ts +285 -0
- package/dist/tentickle-instance.d.ts.map +1 -0
- package/dist/tentickle-instance.js +700 -0
- package/dist/tentickle-instance.js.map +1 -0
- package/dist/testing/act.d.ts +59 -0
- package/dist/testing/act.d.ts.map +1 -0
- package/dist/testing/act.js +92 -0
- package/dist/testing/act.js.map +1 -0
- package/dist/testing/async-helpers.d.ts +99 -0
- package/dist/testing/async-helpers.d.ts.map +1 -0
- package/dist/testing/async-helpers.js +193 -0
- package/dist/testing/async-helpers.js.map +1 -0
- package/dist/testing/compile-agent.d.ts +101 -0
- package/dist/testing/compile-agent.d.ts.map +1 -0
- package/dist/testing/compile-agent.js +136 -0
- package/dist/testing/compile-agent.js.map +1 -0
- package/dist/testing/index.d.ts +57 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +59 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/mock-app.d.ts +163 -0
- package/dist/testing/mock-app.d.ts.map +1 -0
- package/dist/testing/mock-app.js +393 -0
- package/dist/testing/mock-app.js.map +1 -0
- package/dist/testing/mocks.d.ts +142 -0
- package/dist/testing/mocks.d.ts.map +1 -0
- package/dist/testing/mocks.js +191 -0
- package/dist/testing/mocks.js.map +1 -0
- package/dist/testing/render-agent.d.ts +146 -0
- package/dist/testing/render-agent.d.ts.map +1 -0
- package/dist/testing/render-agent.js +200 -0
- package/dist/testing/render-agent.js.map +1 -0
- package/dist/testing/test-adapter.d.ts +157 -0
- package/dist/testing/test-adapter.d.ts.map +1 -0
- package/dist/testing/test-adapter.js +297 -0
- package/dist/testing/test-adapter.js.map +1 -0
- package/dist/testing/test-model.d.ts +132 -0
- package/dist/testing/test-model.d.ts.map +1 -0
- package/dist/testing/test-model.js +260 -0
- package/dist/testing/test-model.js.map +1 -0
- package/dist/tool/index.d.ts +61 -0
- package/dist/tool/index.d.ts.map +1 -0
- package/dist/tool/index.js +63 -0
- package/dist/tool/index.js.map +1 -0
- package/dist/tool/tool-hooks.d.ts +45 -0
- package/dist/tool/tool-hooks.d.ts.map +1 -0
- package/dist/tool/tool-hooks.js +35 -0
- package/dist/tool/tool-hooks.js.map +1 -0
- package/dist/tool/tool.d.ts +403 -0
- package/dist/tool/tool.d.ts.map +1 -0
- package/dist/tool/tool.js +176 -0
- package/dist/tool/tool.js.map +1 -0
- package/dist/types.d.ts +442 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +97 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/abort-utils.d.ts +5 -0
- package/dist/utils/abort-utils.d.ts.map +1 -0
- package/dist/utils/abort-utils.js +50 -0
- package/dist/utils/abort-utils.js.map +1 -0
- package/dist/utils/classify-error.d.ts +19 -0
- package/dist/utils/classify-error.d.ts.map +1 -0
- package/dist/utils/classify-error.js +77 -0
- package/dist/utils/classify-error.js.map +1 -0
- package/dist/utils/index.d.ts +21 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +21 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/normalization.d.ts +6 -0
- package/dist/utils/normalization.d.ts.map +1 -0
- package/dist/utils/normalization.js +103 -0
- package/dist/utils/normalization.js.map +1 -0
- package/dist/utils/registry.d.ts +15 -0
- package/dist/utils/registry.d.ts.map +1 -0
- package/dist/utils/registry.js +28 -0
- package/dist/utils/registry.js.map +1 -0
- package/dist/utils/schema.d.ts +7 -0
- package/dist/utils/schema.d.ts.map +1 -0
- package/dist/utils/schema.js +13 -0
- package/dist/utils/schema.js.map +1 -0
- package/dist/utils/token-estimate.d.ts +87 -0
- package/dist/utils/token-estimate.d.ts.map +1 -0
- package/dist/utils/token-estimate.js +199 -0
- package/dist/utils/token-estimate.js.map +1 -0
- package/dist/v2/reconciler/host-config.d.ts +31 -0
- package/dist/v2/reconciler/host-config.d.ts.map +1 -0
- package/dist/v2/reconciler/host-config.js +197 -0
- package/dist/v2/reconciler/host-config.js.map +1 -0
- package/dist/v2/reconciler/index.d.ts +7 -0
- package/dist/v2/reconciler/index.d.ts.map +1 -0
- package/dist/v2/reconciler/index.js +7 -0
- package/dist/v2/reconciler/index.js.map +1 -0
- package/dist/v2/reconciler/reconciler.d.ts +39 -0
- package/dist/v2/reconciler/reconciler.d.ts.map +1 -0
- package/dist/v2/reconciler/reconciler.js +54 -0
- package/dist/v2/reconciler/reconciler.js.map +1 -0
- package/dist/v2/reconciler/types.d.ts +64 -0
- package/dist/v2/reconciler/types.d.ts.map +1 -0
- package/dist/v2/reconciler/types.js +20 -0
- package/dist/v2/reconciler/types.js.map +1 -0
- package/dist/v2/renderers/index.d.ts +7 -0
- package/dist/v2/renderers/index.d.ts.map +1 -0
- package/dist/v2/renderers/index.js +7 -0
- package/dist/v2/renderers/index.js.map +1 -0
- package/dist/v2/renderers/markdown.d.ts +16 -0
- package/dist/v2/renderers/markdown.d.ts.map +1 -0
- package/dist/v2/renderers/markdown.js +65 -0
- package/dist/v2/renderers/markdown.js.map +1 -0
- package/dist/v2/renderers/types.d.ts +26 -0
- package/dist/v2/renderers/types.d.ts.map +1 -0
- package/dist/v2/renderers/types.js +6 -0
- package/dist/v2/renderers/types.js.map +1 -0
- package/dist/v2/renderers/xml.d.ts +17 -0
- package/dist/v2/renderers/xml.d.ts.map +1 -0
- package/dist/v2/renderers/xml.js +73 -0
- package/dist/v2/renderers/xml.js.map +1 -0
- package/package.json +49 -0
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* V2 Runtime Context
|
|
3
|
+
*
|
|
4
|
+
* Holds per-session state that hooks need access to.
|
|
5
|
+
* This is what makes each FiberCompiler/Session isolated.
|
|
6
|
+
*/
|
|
7
|
+
import React, { type ReactNode } from "react";
|
|
8
|
+
import type { CompiledStructure } from "../compiler/types";
|
|
9
|
+
import type { TickStartCallback, TickEndCallback, AfterCompileCallback, TickResult, TickState } from "./types";
|
|
10
|
+
import type { COM } from "../com/object-model";
|
|
11
|
+
export interface CacheEntry {
|
|
12
|
+
value: unknown;
|
|
13
|
+
tick: number;
|
|
14
|
+
deps?: unknown[];
|
|
15
|
+
}
|
|
16
|
+
export interface SerializableCacheEntry {
|
|
17
|
+
value: unknown;
|
|
18
|
+
tick: number;
|
|
19
|
+
deps?: unknown[];
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Registration for a single knob in the runtime store.
|
|
23
|
+
* Stores primitive info + constraints — the resolved value is internal to useKnob.
|
|
24
|
+
*/
|
|
25
|
+
export interface KnobRegistration {
|
|
26
|
+
name: string;
|
|
27
|
+
description: string;
|
|
28
|
+
getPrimitive: () => string | number | boolean;
|
|
29
|
+
setPrimitive: (value: string | number | boolean) => void;
|
|
30
|
+
defaultValue: string | number | boolean;
|
|
31
|
+
options?: (string | number | boolean)[];
|
|
32
|
+
valueType: "string" | "number" | "boolean";
|
|
33
|
+
group?: string;
|
|
34
|
+
required?: boolean;
|
|
35
|
+
validate?: (value: any) => true | string;
|
|
36
|
+
min?: number;
|
|
37
|
+
max?: number;
|
|
38
|
+
step?: number;
|
|
39
|
+
maxLength?: number;
|
|
40
|
+
pattern?: string;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Per-session runtime state.
|
|
44
|
+
* Each FiberCompiler creates one of these.
|
|
45
|
+
*/
|
|
46
|
+
export interface RuntimeStore {
|
|
47
|
+
/** Data cache for useData */
|
|
48
|
+
dataCache: Map<string, CacheEntry>;
|
|
49
|
+
/** Pending data fetches */
|
|
50
|
+
pendingFetches: Map<string, Promise<unknown>>;
|
|
51
|
+
/** Lifecycle callbacks */
|
|
52
|
+
tickStartCallbacks: Set<TickStartCallback>;
|
|
53
|
+
tickEndCallbacks: Set<TickEndCallback>;
|
|
54
|
+
afterCompileCallbacks: Set<AfterCompileCallback>;
|
|
55
|
+
/** Knob registry — all active knobs registered by useKnob */
|
|
56
|
+
knobRegistry: Map<string, KnobRegistration>;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Create a new runtime store.
|
|
60
|
+
*/
|
|
61
|
+
export declare function createRuntimeStore(): RuntimeStore;
|
|
62
|
+
/**
|
|
63
|
+
* Get the runtime store from context.
|
|
64
|
+
*/
|
|
65
|
+
export declare function useRuntimeStore(): RuntimeStore;
|
|
66
|
+
/**
|
|
67
|
+
* Provider for runtime context.
|
|
68
|
+
*/
|
|
69
|
+
export declare function RuntimeProvider({ store, children, }: {
|
|
70
|
+
store: RuntimeStore;
|
|
71
|
+
children?: ReactNode;
|
|
72
|
+
}): React.ReactElement;
|
|
73
|
+
/**
|
|
74
|
+
* Check if store has pending data fetches.
|
|
75
|
+
*/
|
|
76
|
+
export declare function storeHasPendingData(store: RuntimeStore): boolean;
|
|
77
|
+
/**
|
|
78
|
+
* Wait for all pending data fetches in store.
|
|
79
|
+
*/
|
|
80
|
+
export declare function storeResolvePendingData(store: RuntimeStore): Promise<void>;
|
|
81
|
+
/**
|
|
82
|
+
* Run tick start callbacks with TickState and COM.
|
|
83
|
+
*/
|
|
84
|
+
export declare function storeRunTickStartCallbacks(store: RuntimeStore, tickState: TickState, ctx: COM): Promise<void>;
|
|
85
|
+
/**
|
|
86
|
+
* Run tick end callbacks with TickResult and COM.
|
|
87
|
+
*
|
|
88
|
+
* Callbacks receive TickResult (data) and COM (context).
|
|
89
|
+
* TickResult contains both data about the completed tick and control methods
|
|
90
|
+
* (stop/continue) to influence whether execution continues.
|
|
91
|
+
*
|
|
92
|
+
* If a callback returns a boolean, it's automatically converted to a continue/stop call:
|
|
93
|
+
* - true = result.continue()
|
|
94
|
+
* - false = result.stop()
|
|
95
|
+
* - void/undefined = no automatic action (callback may have called methods directly)
|
|
96
|
+
*/
|
|
97
|
+
export declare function storeRunTickEndCallbacks(store: RuntimeStore, result: TickResult, ctx: COM): Promise<void>;
|
|
98
|
+
/**
|
|
99
|
+
* Run after compile callbacks.
|
|
100
|
+
*/
|
|
101
|
+
export declare function storeRunAfterCompileCallbacks(store: RuntimeStore, compiled: CompiledStructure, ctx: COM): Promise<void>;
|
|
102
|
+
/**
|
|
103
|
+
* Clear lifecycle callbacks.
|
|
104
|
+
*/
|
|
105
|
+
export declare function storeClearLifecycleCallbacks(store: RuntimeStore): void;
|
|
106
|
+
/**
|
|
107
|
+
* Clear data cache.
|
|
108
|
+
*/
|
|
109
|
+
export declare function storeClearDataCache(store: RuntimeStore): void;
|
|
110
|
+
/**
|
|
111
|
+
* Get serializable data cache.
|
|
112
|
+
*/
|
|
113
|
+
export declare function storeGetSerializableDataCache(store: RuntimeStore): Record<string, SerializableCacheEntry>;
|
|
114
|
+
/**
|
|
115
|
+
* Restore data cache from serializable format.
|
|
116
|
+
*/
|
|
117
|
+
export declare function storeSetDataCache(store: RuntimeStore, data: Record<string, SerializableCacheEntry>): void;
|
|
118
|
+
/**
|
|
119
|
+
* Invalidate cached data matching a pattern.
|
|
120
|
+
*/
|
|
121
|
+
export declare function storeInvalidateData(store: RuntimeStore, pattern: string | RegExp): void;
|
|
122
|
+
//# sourceMappingURL=runtime-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-context.d.ts","sourceRoot":"","sources":["../../src/hooks/runtime-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* V2 Runtime Context
|
|
3
|
+
*
|
|
4
|
+
* Holds per-session state that hooks need access to.
|
|
5
|
+
* This is what makes each FiberCompiler/Session isolated.
|
|
6
|
+
*/
|
|
7
|
+
import React, { createContext, useContext } from "react";
|
|
8
|
+
// Helper for createElement
|
|
9
|
+
const h = React.createElement;
|
|
10
|
+
/**
|
|
11
|
+
* Create a new runtime store.
|
|
12
|
+
*/
|
|
13
|
+
export function createRuntimeStore() {
|
|
14
|
+
return {
|
|
15
|
+
dataCache: new Map(),
|
|
16
|
+
pendingFetches: new Map(),
|
|
17
|
+
tickStartCallbacks: new Set(),
|
|
18
|
+
tickEndCallbacks: new Set(),
|
|
19
|
+
afterCompileCallbacks: new Set(),
|
|
20
|
+
knobRegistry: new Map(),
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
// ============================================================
|
|
24
|
+
// React Context
|
|
25
|
+
// ============================================================
|
|
26
|
+
const RuntimeContext = createContext(null);
|
|
27
|
+
/**
|
|
28
|
+
* Get the runtime store from context.
|
|
29
|
+
*/
|
|
30
|
+
export function useRuntimeStore() {
|
|
31
|
+
const store = useContext(RuntimeContext);
|
|
32
|
+
if (!store) {
|
|
33
|
+
throw new Error("useRuntimeStore must be used within a RuntimeProvider");
|
|
34
|
+
}
|
|
35
|
+
return store;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Provider for runtime context.
|
|
39
|
+
*/
|
|
40
|
+
export function RuntimeProvider({ store, children, }) {
|
|
41
|
+
return h(RuntimeContext.Provider, { value: store }, children);
|
|
42
|
+
}
|
|
43
|
+
// ============================================================
|
|
44
|
+
// Store Operations (for use outside React render)
|
|
45
|
+
// ============================================================
|
|
46
|
+
/**
|
|
47
|
+
* Check if store has pending data fetches.
|
|
48
|
+
*/
|
|
49
|
+
export function storeHasPendingData(store) {
|
|
50
|
+
return store.pendingFetches.size > 0;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Wait for all pending data fetches in store.
|
|
54
|
+
*/
|
|
55
|
+
export async function storeResolvePendingData(store) {
|
|
56
|
+
if (store.pendingFetches.size === 0)
|
|
57
|
+
return;
|
|
58
|
+
await Promise.all(store.pendingFetches.values());
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Run tick start callbacks with TickState and COM.
|
|
62
|
+
*/
|
|
63
|
+
export async function storeRunTickStartCallbacks(store, tickState, ctx) {
|
|
64
|
+
for (const callback of store.tickStartCallbacks) {
|
|
65
|
+
await callback(tickState, ctx);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Run tick end callbacks with TickResult and COM.
|
|
70
|
+
*
|
|
71
|
+
* Callbacks receive TickResult (data) and COM (context).
|
|
72
|
+
* TickResult contains both data about the completed tick and control methods
|
|
73
|
+
* (stop/continue) to influence whether execution continues.
|
|
74
|
+
*
|
|
75
|
+
* If a callback returns a boolean, it's automatically converted to a continue/stop call:
|
|
76
|
+
* - true = result.continue()
|
|
77
|
+
* - false = result.stop()
|
|
78
|
+
* - void/undefined = no automatic action (callback may have called methods directly)
|
|
79
|
+
*/
|
|
80
|
+
export async function storeRunTickEndCallbacks(store, result, ctx) {
|
|
81
|
+
for (const callback of store.tickEndCallbacks) {
|
|
82
|
+
const decision = await callback(result, ctx);
|
|
83
|
+
// If callback returns boolean, auto-convert to continue/stop
|
|
84
|
+
if (decision === true) {
|
|
85
|
+
result.continue();
|
|
86
|
+
}
|
|
87
|
+
else if (decision === false) {
|
|
88
|
+
result.stop();
|
|
89
|
+
}
|
|
90
|
+
// void/undefined = callback handled it or wants default behavior
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Run after compile callbacks.
|
|
95
|
+
*/
|
|
96
|
+
export async function storeRunAfterCompileCallbacks(store, compiled, ctx) {
|
|
97
|
+
for (const callback of store.afterCompileCallbacks) {
|
|
98
|
+
await callback(compiled, ctx);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Clear lifecycle callbacks.
|
|
103
|
+
*/
|
|
104
|
+
export function storeClearLifecycleCallbacks(store) {
|
|
105
|
+
store.tickStartCallbacks.clear();
|
|
106
|
+
store.tickEndCallbacks.clear();
|
|
107
|
+
store.afterCompileCallbacks.clear();
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Clear data cache.
|
|
111
|
+
*/
|
|
112
|
+
export function storeClearDataCache(store) {
|
|
113
|
+
store.dataCache.clear();
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Get serializable data cache.
|
|
117
|
+
*/
|
|
118
|
+
export function storeGetSerializableDataCache(store) {
|
|
119
|
+
const result = {};
|
|
120
|
+
for (const [key, entry] of store.dataCache) {
|
|
121
|
+
result[key] = {
|
|
122
|
+
value: entry.value,
|
|
123
|
+
tick: entry.tick,
|
|
124
|
+
deps: entry.deps,
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
return result;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Restore data cache from serializable format.
|
|
131
|
+
*/
|
|
132
|
+
export function storeSetDataCache(store, data) {
|
|
133
|
+
store.dataCache.clear();
|
|
134
|
+
for (const [key, entry] of Object.entries(data)) {
|
|
135
|
+
store.dataCache.set(key, entry);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Invalidate cached data matching a pattern.
|
|
140
|
+
*/
|
|
141
|
+
export function storeInvalidateData(store, pattern) {
|
|
142
|
+
for (const key of store.dataCache.keys()) {
|
|
143
|
+
const matches = typeof pattern === "string" ? key === pattern : pattern.test(key);
|
|
144
|
+
if (matches) {
|
|
145
|
+
store.dataCache.delete(key);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
//# sourceMappingURL=runtime-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-context.js","sourceRoot":"","sources":["../../src/hooks/runtime-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Signal implementation for reactive state management.
|
|
3
|
+
*
|
|
4
|
+
* Signals provide a lightweight, framework-agnostic way to manage reactive state.
|
|
5
|
+
* Similar to Angular/SolidJS signals.
|
|
6
|
+
*
|
|
7
|
+
* This is the full signal library with:
|
|
8
|
+
* - AsyncLocalStorage for concurrency safety
|
|
9
|
+
* - Auto-tracking computed signals
|
|
10
|
+
* - Batch operations
|
|
11
|
+
* - COM state integration
|
|
12
|
+
* - Compiler integration for automatic recompilation
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* // Create a signal
|
|
17
|
+
* const count = signal(0);
|
|
18
|
+
*
|
|
19
|
+
* // Read value
|
|
20
|
+
* console.log(count()); // 0
|
|
21
|
+
*
|
|
22
|
+
* // Update value
|
|
23
|
+
* count.set(10);
|
|
24
|
+
* console.log(count()); // 10
|
|
25
|
+
*
|
|
26
|
+
* // Update with function
|
|
27
|
+
* count.update(n => n + 1);
|
|
28
|
+
* console.log(count()); // 11
|
|
29
|
+
*
|
|
30
|
+
* // Computed signal (memoized, auto-updates)
|
|
31
|
+
* const doubled = computed(() => count() * 2);
|
|
32
|
+
* console.log(doubled()); // 22
|
|
33
|
+
*
|
|
34
|
+
* // Cleanup when done
|
|
35
|
+
* count.dispose();
|
|
36
|
+
* ```
|
|
37
|
+
*
|
|
38
|
+
* @see docs/state-management.md for full documentation
|
|
39
|
+
*/
|
|
40
|
+
/**
|
|
41
|
+
* Run a function within a signal context.
|
|
42
|
+
* Used by FiberCompiler to establish per-execution context.
|
|
43
|
+
*
|
|
44
|
+
* @internal
|
|
45
|
+
*/
|
|
46
|
+
export declare function runWithSignalContext<T>(fn: () => T): T;
|
|
47
|
+
/**
|
|
48
|
+
* Run an async function within a signal context.
|
|
49
|
+
* Used by FiberCompiler to establish per-execution context.
|
|
50
|
+
*
|
|
51
|
+
* @internal
|
|
52
|
+
*/
|
|
53
|
+
export declare function runWithSignalContextAsync<T>(fn: () => Promise<T>): Promise<T>;
|
|
54
|
+
export declare const SIGNAL_SYMBOL: unique symbol;
|
|
55
|
+
export declare const COMPUTED_SYMBOL: unique symbol;
|
|
56
|
+
export declare const EFFECT_SYMBOL: unique symbol;
|
|
57
|
+
type EqualityFn<T> = (a: T, b: T) => boolean;
|
|
58
|
+
type CleanupFn = () => void;
|
|
59
|
+
export interface SignalOptions<T> {
|
|
60
|
+
/** Custom equality function. Default: Object.is */
|
|
61
|
+
equal?: EqualityFn<T>;
|
|
62
|
+
/** Signal name for debugging */
|
|
63
|
+
name?: string;
|
|
64
|
+
}
|
|
65
|
+
export interface Signal<T> {
|
|
66
|
+
/** Read the current value */
|
|
67
|
+
(): T;
|
|
68
|
+
/** Set a new value */
|
|
69
|
+
set: (value: T | ((prev: T) => T)) => void;
|
|
70
|
+
/** Update value with a function */
|
|
71
|
+
update: (updater: (value: T) => T) => void;
|
|
72
|
+
/** Subscribe to value changes */
|
|
73
|
+
subscribe?: (callback: (value: T) => void) => () => void;
|
|
74
|
+
/** Current value (property access) */
|
|
75
|
+
readonly value: T;
|
|
76
|
+
/** Dispose this signal and clean up all listeners */
|
|
77
|
+
dispose?: () => void;
|
|
78
|
+
/** Check if signal is disposed */
|
|
79
|
+
readonly disposed?: boolean;
|
|
80
|
+
}
|
|
81
|
+
export interface ComputedSignal<T> {
|
|
82
|
+
/** Read the current value */
|
|
83
|
+
(): T;
|
|
84
|
+
/** Current value (property access) */
|
|
85
|
+
readonly value: T;
|
|
86
|
+
/** Dispose this computed and stop tracking */
|
|
87
|
+
dispose: () => void;
|
|
88
|
+
/** Check if computed is disposed */
|
|
89
|
+
readonly disposed: boolean;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* A read-only signal that can be observed but not modified.
|
|
93
|
+
* Used for watching state owned by another component.
|
|
94
|
+
*/
|
|
95
|
+
export interface ReadonlySignal<T> {
|
|
96
|
+
/** Read the current value */
|
|
97
|
+
(): T;
|
|
98
|
+
/** Current value (property access) */
|
|
99
|
+
readonly value: T;
|
|
100
|
+
/** Dispose this signal and stop watching */
|
|
101
|
+
dispose: () => void;
|
|
102
|
+
/** Check if disposed */
|
|
103
|
+
readonly disposed: boolean;
|
|
104
|
+
}
|
|
105
|
+
export interface EffectRef {
|
|
106
|
+
/** Dispose this effect and stop running */
|
|
107
|
+
dispose: () => void;
|
|
108
|
+
/** Check if effect is disposed */
|
|
109
|
+
readonly disposed: boolean;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Batch multiple signal updates together.
|
|
113
|
+
* Effects only run once after all updates complete.
|
|
114
|
+
*
|
|
115
|
+
* @example
|
|
116
|
+
* ```typescript
|
|
117
|
+
* batch(() => {
|
|
118
|
+
* count.set(1);
|
|
119
|
+
* name.set('Alice');
|
|
120
|
+
* // Effects run once here, not twice
|
|
121
|
+
* });
|
|
122
|
+
* ```
|
|
123
|
+
*/
|
|
124
|
+
export declare function batch<T>(fn: () => T): T;
|
|
125
|
+
/**
|
|
126
|
+
* Creates a writable signal with an initial value.
|
|
127
|
+
*
|
|
128
|
+
* @example
|
|
129
|
+
* ```typescript
|
|
130
|
+
* const count = signal(0);
|
|
131
|
+
* count(); // 0
|
|
132
|
+
* count.set(10); // set to 10
|
|
133
|
+
* count.update(n => n + 1); // increment
|
|
134
|
+
* count.dispose(); // cleanup
|
|
135
|
+
* ```
|
|
136
|
+
*/
|
|
137
|
+
export declare function signal<T>(initialValue: T, options?: SignalOptions<T>): Signal<T>;
|
|
138
|
+
/**
|
|
139
|
+
* Create a standalone signal (not tied to a component).
|
|
140
|
+
* Alias for signal() for API compatibility.
|
|
141
|
+
*/
|
|
142
|
+
export declare function createSignal<T>(initialValue: T, options?: SignalOptions<T>): Signal<T>;
|
|
143
|
+
/**
|
|
144
|
+
* Creates a computed signal that derives its value from other signals.
|
|
145
|
+
* Computed values are memoized and only recompute when dependencies change.
|
|
146
|
+
*
|
|
147
|
+
* @example
|
|
148
|
+
* ```typescript
|
|
149
|
+
* const count = signal(0);
|
|
150
|
+
* const doubled = computed(() => count() * 2);
|
|
151
|
+
*
|
|
152
|
+
* doubled(); // 0
|
|
153
|
+
* count.set(5);
|
|
154
|
+
* doubled(); // 10 (recomputed)
|
|
155
|
+
* doubled(); // 10 (cached, no recompute)
|
|
156
|
+
* ```
|
|
157
|
+
*/
|
|
158
|
+
export declare function computed<T>(computation: () => T, options?: SignalOptions<T>): ComputedSignal<T>;
|
|
159
|
+
/**
|
|
160
|
+
* Runs an effect that automatically re-runs when dependencies change.
|
|
161
|
+
* Use sparingly - prefer computed() for derived values.
|
|
162
|
+
*
|
|
163
|
+
* Best for: syncing to external APIs (localStorage, canvas, DOM, etc.)
|
|
164
|
+
*
|
|
165
|
+
* @example
|
|
166
|
+
* ```typescript
|
|
167
|
+
* const count = signal(0);
|
|
168
|
+
*
|
|
169
|
+
* const ref = effect(() => {
|
|
170
|
+
* console.log('Count:', count());
|
|
171
|
+
* });
|
|
172
|
+
*
|
|
173
|
+
* count.set(5); // logs "Count: 5"
|
|
174
|
+
*
|
|
175
|
+
* ref.dispose(); // stop the effect
|
|
176
|
+
* ```
|
|
177
|
+
*/
|
|
178
|
+
export declare function effect(fn: (onCleanup: (cleanup: CleanupFn) => void) => void | CleanupFn): EffectRef;
|
|
179
|
+
/**
|
|
180
|
+
* Create a signal - reactive state that can trigger reconciliation.
|
|
181
|
+
*
|
|
182
|
+
* Unlike useState, signals:
|
|
183
|
+
* - Can be read outside of render
|
|
184
|
+
* - Can be subscribed to
|
|
185
|
+
* - Don't cause immediate re-render (schedule reconcile instead)
|
|
186
|
+
*
|
|
187
|
+
* @example
|
|
188
|
+
* ```tsx
|
|
189
|
+
* const MyComponent = () => {
|
|
190
|
+
* const count = useSignal(0);
|
|
191
|
+
*
|
|
192
|
+
* const handleClick = () => {
|
|
193
|
+
* count.set(c => c + 1);
|
|
194
|
+
* };
|
|
195
|
+
*
|
|
196
|
+
* return <Section>Count: {count()}</Section>;
|
|
197
|
+
* };
|
|
198
|
+
* ```
|
|
199
|
+
*/
|
|
200
|
+
export declare function useSignal<T>(initialValue: T): Signal<T>;
|
|
201
|
+
/**
|
|
202
|
+
* Create a computed signal that derives from other signals.
|
|
203
|
+
*
|
|
204
|
+
* @example
|
|
205
|
+
* ```tsx
|
|
206
|
+
* const count = useSignal(5);
|
|
207
|
+
* const doubled = useComputed(() => count() * 2, [count]);
|
|
208
|
+
* // doubled() === 10
|
|
209
|
+
* ```
|
|
210
|
+
*/
|
|
211
|
+
export declare function useComputed<T>(compute: () => T, deps: readonly Signal<any>[]): Signal<T>;
|
|
212
|
+
/**
|
|
213
|
+
* Read a signal without tracking it as a dependency.
|
|
214
|
+
* Useful when you want to read a value in a computed/effect without
|
|
215
|
+
* triggering re-runs when that value changes.
|
|
216
|
+
*
|
|
217
|
+
* @example
|
|
218
|
+
* ```typescript
|
|
219
|
+
* effect(() => {
|
|
220
|
+
* const user = currentUser();
|
|
221
|
+
* const count = untracked(() => counter()); // won't trigger re-run
|
|
222
|
+
* console.log(`User ${user} has count ${count}`);
|
|
223
|
+
* });
|
|
224
|
+
* ```
|
|
225
|
+
*/
|
|
226
|
+
export declare function untracked<T>(fn: () => T): T;
|
|
227
|
+
/**
|
|
228
|
+
* Check if a value is a signal.
|
|
229
|
+
*/
|
|
230
|
+
export declare function isSignal(value: unknown): value is Signal<unknown>;
|
|
231
|
+
/**
|
|
232
|
+
* Check if a value is a computed signal.
|
|
233
|
+
*/
|
|
234
|
+
export declare function isComputed(value: unknown): value is ComputedSignal<unknown>;
|
|
235
|
+
/**
|
|
236
|
+
* Check if a value is an effect ref.
|
|
237
|
+
*/
|
|
238
|
+
export declare function isEffect(value: unknown): value is EffectRef;
|
|
239
|
+
export declare const COM_SIGNAL_SYMBOL: unique symbol;
|
|
240
|
+
/**
|
|
241
|
+
* Creates a signal bound to COM state.
|
|
242
|
+
* Changes sync bidirectionally between signal and COM.
|
|
243
|
+
*
|
|
244
|
+
* @internal Used by comState() after COM is available
|
|
245
|
+
*/
|
|
246
|
+
export declare function createCOMStateSignal<T>(ctx: {
|
|
247
|
+
getState: (key: string) => T | undefined;
|
|
248
|
+
setState: (key: string, value: unknown) => void;
|
|
249
|
+
on: (event: any, handler: (...args: any[]) => void) => any;
|
|
250
|
+
off?: (event: any, handler: (...args: any[]) => void) => any;
|
|
251
|
+
}, key: string, initialValue?: T): Signal<T | undefined>;
|
|
252
|
+
export declare const WATCH_SIGNAL_SYMBOL: unique symbol;
|
|
253
|
+
export declare const PROPS_SIGNAL_SYMBOL: unique symbol;
|
|
254
|
+
export declare const REQUIRED_INPUT_SYMBOL: unique symbol;
|
|
255
|
+
/**
|
|
256
|
+
* Creates a read-only signal that watches COM state.
|
|
257
|
+
* The signal updates when COM state changes, but cannot modify it.
|
|
258
|
+
*
|
|
259
|
+
* @internal Used by watchComState() and watch()
|
|
260
|
+
*/
|
|
261
|
+
export declare function createReadonlyCOMStateSignal<T>(ctx: {
|
|
262
|
+
getState: (key: string) => T | undefined;
|
|
263
|
+
on: (event: any, handler: (...args: any[]) => void) => any;
|
|
264
|
+
off?: (event: any, handler: (...args: any[]) => void) => any;
|
|
265
|
+
}, key: string, defaultValue?: T): ReadonlySignal<T | undefined>;
|
|
266
|
+
export {};
|
|
267
|
+
//# sourceMappingURL=signal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signal.d.ts","sourceRoot":"","sources":["../../src/hooks/signal.ts"],"names":[],"mappings":"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"}
|