@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,314 @@
|
|
|
1
|
+
import type { COMInput, COMOutput } from "../com/types";
|
|
2
|
+
import type { COM } from "../com/object-model";
|
|
3
|
+
import type { JSX } from "../jsx/jsx-runtime";
|
|
4
|
+
import type { StopReason, UsageStats } from "@agentick/shared";
|
|
5
|
+
import type { ExecutableTool } from "../tool/tool";
|
|
6
|
+
import { type ComponentHookMiddleware, ComponentHookRegistry } from "./component-hooks";
|
|
7
|
+
import type { ChannelService } from "../channels";
|
|
8
|
+
import { type CompiledStructure } from "../compiler/types";
|
|
9
|
+
import type { ExecutionMessage } from "../engine/execution-types";
|
|
10
|
+
/**
|
|
11
|
+
* Stop reason information for components to react to.
|
|
12
|
+
*/
|
|
13
|
+
export interface StopReasonInfo {
|
|
14
|
+
/**
|
|
15
|
+
* The stop reason code (from StopReason enum or custom string).
|
|
16
|
+
*/
|
|
17
|
+
reason: string | StopReason;
|
|
18
|
+
/**
|
|
19
|
+
* Human-readable description of why execution stopped.
|
|
20
|
+
*/
|
|
21
|
+
description?: string;
|
|
22
|
+
/**
|
|
23
|
+
* Whether this stop reason allows for recovery/retry.
|
|
24
|
+
*/
|
|
25
|
+
recoverable?: boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Additional metadata about the stop reason.
|
|
28
|
+
*/
|
|
29
|
+
metadata?: Record<string, unknown>;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Error information for components to react to.
|
|
33
|
+
*/
|
|
34
|
+
export interface EngineError {
|
|
35
|
+
/**
|
|
36
|
+
* The error that occurred.
|
|
37
|
+
*/
|
|
38
|
+
error: Error;
|
|
39
|
+
/**
|
|
40
|
+
* Phase where the error occurred.
|
|
41
|
+
*/
|
|
42
|
+
phase: "render" | "model_execution" | "tool_execution" | "tick_start" | "tick_end" | "complete" | "unknown";
|
|
43
|
+
/**
|
|
44
|
+
* Additional context about the error.
|
|
45
|
+
*/
|
|
46
|
+
context?: Record<string, unknown>;
|
|
47
|
+
/**
|
|
48
|
+
* Whether this error is recoverable.
|
|
49
|
+
*/
|
|
50
|
+
recoverable?: boolean;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Recovery action that components can return from onError.
|
|
54
|
+
*/
|
|
55
|
+
export interface RecoveryAction {
|
|
56
|
+
/**
|
|
57
|
+
* Whether to continue execution after recovery.
|
|
58
|
+
*/
|
|
59
|
+
continue: boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Optional message to add to the timeline explaining the recovery.
|
|
62
|
+
*/
|
|
63
|
+
recoveryMessage?: string;
|
|
64
|
+
/**
|
|
65
|
+
* Optional modifications to make to the COM before continuing.
|
|
66
|
+
*/
|
|
67
|
+
modifications?: (ctx: COM) => void | Promise<void>;
|
|
68
|
+
}
|
|
69
|
+
export interface TickState {
|
|
70
|
+
/**
|
|
71
|
+
* Current tick number (1-indexed).
|
|
72
|
+
*/
|
|
73
|
+
tick: number;
|
|
74
|
+
/**
|
|
75
|
+
* The COMInput from the previous tick (what was sent to model.fromEngineState).
|
|
76
|
+
* This is the compiled state that was passed to the model.
|
|
77
|
+
*/
|
|
78
|
+
previous?: COMInput;
|
|
79
|
+
/**
|
|
80
|
+
* The COMOutput from the last tick (what was produced by model execution and tool execution).
|
|
81
|
+
* Contains new timeline entries, tool calls, and tool results.
|
|
82
|
+
*
|
|
83
|
+
* On tick 1, before model execution, this contains userInput (timeline, sections)
|
|
84
|
+
* to allow components to render purely from previous + current.
|
|
85
|
+
*/
|
|
86
|
+
current?: COMOutput;
|
|
87
|
+
/**
|
|
88
|
+
* Stop reason information from the last model execution.
|
|
89
|
+
* Components can use this to handle graceful recovery, retries, etc.
|
|
90
|
+
*/
|
|
91
|
+
stopReason?: StopReasonInfo;
|
|
92
|
+
/**
|
|
93
|
+
* Token usage from the last model execution.
|
|
94
|
+
* Contains inputTokens, outputTokens, totalTokens, and optional reasoning/cache tokens.
|
|
95
|
+
*/
|
|
96
|
+
usage?: UsageStats;
|
|
97
|
+
/**
|
|
98
|
+
* Error information if an error occurred during execution.
|
|
99
|
+
* Components can use this to handle errors and potentially recover.
|
|
100
|
+
*/
|
|
101
|
+
error?: EngineError;
|
|
102
|
+
/**
|
|
103
|
+
* Signal the engine to stop execution after this tick.
|
|
104
|
+
* @param reason The reason for stopping.
|
|
105
|
+
*/
|
|
106
|
+
stop: (reason: string) => void;
|
|
107
|
+
/**
|
|
108
|
+
* Messages queued since the last tick.
|
|
109
|
+
*
|
|
110
|
+
* Messages are delivered immediately to onMessage hooks when they arrive,
|
|
111
|
+
* then queued here for availability during render. This allows components
|
|
112
|
+
* to access all messages received since the last tick in their render logic.
|
|
113
|
+
*
|
|
114
|
+
* The queue is cleared after each tick completes.
|
|
115
|
+
*/
|
|
116
|
+
queuedMessages: ExecutionMessage[];
|
|
117
|
+
/**
|
|
118
|
+
* Channel service for bidirectional communication (optional).
|
|
119
|
+
* Components can publish/subscribe to channels for UI integration.
|
|
120
|
+
*/
|
|
121
|
+
channels?: ChannelService;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Context provided to onAfterCompile hook.
|
|
125
|
+
* Contains metadata about the current compilation iteration.
|
|
126
|
+
*/
|
|
127
|
+
export interface AfterCompileContext {
|
|
128
|
+
/**
|
|
129
|
+
* Current compilation iteration (0-indexed).
|
|
130
|
+
*/
|
|
131
|
+
iteration: number;
|
|
132
|
+
/**
|
|
133
|
+
* Maximum allowed iterations before forced stabilization.
|
|
134
|
+
*/
|
|
135
|
+
maxIterations: number;
|
|
136
|
+
}
|
|
137
|
+
export interface EngineComponent {
|
|
138
|
+
name?: string;
|
|
139
|
+
/**
|
|
140
|
+
* The channels declaration for the component.
|
|
141
|
+
* Components can declare channels to publish and subscribe to.
|
|
142
|
+
*/
|
|
143
|
+
tool?: ExecutableTool;
|
|
144
|
+
/**
|
|
145
|
+
* Called when the component is mounted to the engine.
|
|
146
|
+
* Use this to register static resources like tools.
|
|
147
|
+
* @param ctx The persistent Context Object Model for this execution.
|
|
148
|
+
*/
|
|
149
|
+
onMount?: (ctx: COM) => Promise<void> | void;
|
|
150
|
+
/**
|
|
151
|
+
* Called when the component is unmounted from the engine.
|
|
152
|
+
* @param ctx The persistent Context Object Model for this execution.
|
|
153
|
+
*/
|
|
154
|
+
onUnmount?: (ctx: COM) => Promise<void> | void;
|
|
155
|
+
/**
|
|
156
|
+
* Called once before the first tick, after the COM is created.
|
|
157
|
+
* Use this for initialization that needs to happen before execution starts.
|
|
158
|
+
* @param ctx The persistent Context Object Model for this execution.
|
|
159
|
+
*/
|
|
160
|
+
onStart?: (ctx: COM) => Promise<void> | void;
|
|
161
|
+
onTickStart?: (ctx: COM, state: TickState) => Promise<void> | void;
|
|
162
|
+
/**
|
|
163
|
+
* Declaratively render context for the current tick.
|
|
164
|
+
* Components should interact with the COM to compose the context.
|
|
165
|
+
* OR return a Virtual DOM tree (JSX.Element) to be rendered by the Engine.
|
|
166
|
+
* @param ctx The persistent Context Object Model for this execution.
|
|
167
|
+
* @param state Current tick state including input and previous render.
|
|
168
|
+
*/
|
|
169
|
+
render?: (ctx: COM, state: TickState) => Promise<void | JSX.Element | null> | void | JSX.Element | null;
|
|
170
|
+
/**
|
|
171
|
+
* Called after each compilation pass, before the final render is applied.
|
|
172
|
+
* Use this to inspect the compiled structure and potentially request re-compilation
|
|
173
|
+
* if state changes are needed (e.g., context summarization, tool adjustments).
|
|
174
|
+
*
|
|
175
|
+
* The compilation loop continues until no component calls `ctx.requestRecompile()`
|
|
176
|
+
* or the maximum iteration limit is reached.
|
|
177
|
+
*
|
|
178
|
+
* @param ctx The persistent Context Object Model for this execution.
|
|
179
|
+
* @param compiled The compiled structure from this compilation pass.
|
|
180
|
+
* @param state Current tick state.
|
|
181
|
+
* @param afterCompileCtx Context containing iteration metadata.
|
|
182
|
+
*/
|
|
183
|
+
onAfterCompile?: (ctx: COM, compiled: CompiledStructure, state: TickState, afterCompileCtx: AfterCompileContext) => Promise<void> | void;
|
|
184
|
+
/**
|
|
185
|
+
* Called after model execution completes for this tick.
|
|
186
|
+
* At this point, current is available (contains model outputs from this tick).
|
|
187
|
+
* Use this for per-tick processing, validation, or side effects.
|
|
188
|
+
* Note: Model outputs are automatically included in the next tick's previous.
|
|
189
|
+
* @param ctx The persistent Context Object Model for this execution.
|
|
190
|
+
* @param state Current tick state including previous and current.
|
|
191
|
+
*/
|
|
192
|
+
onTickEnd?: (ctx: COM, state: TickState) => Promise<void> | void;
|
|
193
|
+
/**
|
|
194
|
+
* Called after the entire execution completes (all ticks finished).
|
|
195
|
+
* At this point, the final COMInput is available.
|
|
196
|
+
* Use this for final state processing, persistence, reporting, side effects, etc.
|
|
197
|
+
* Called before onUnmount.
|
|
198
|
+
*
|
|
199
|
+
* Note: This is for side effects only, not rendering. Rendering should happen in render().
|
|
200
|
+
* Model outputs are automatically included in the final COM state.
|
|
201
|
+
* @param ctx The persistent Context Object Model for this execution.
|
|
202
|
+
* @param finalState The final COMInput state after all ticks.
|
|
203
|
+
*/
|
|
204
|
+
onComplete?: (ctx: COM, finalState: COMInput) => Promise<void> | void;
|
|
205
|
+
/**
|
|
206
|
+
* Called immediately when a message is sent to the running execution.
|
|
207
|
+
*
|
|
208
|
+
* Messages can arrive via:
|
|
209
|
+
* - RuntimeSession.sendMessage() - Direct programmatic injection
|
|
210
|
+
* - ExecutionHandle.send() - Via handle reference
|
|
211
|
+
* - Channel events with type='message' - From client
|
|
212
|
+
*
|
|
213
|
+
* This hook is called immediately when the message arrives, not at tick boundaries.
|
|
214
|
+
* Use ctx.abort() to interrupt execution if needed, or update state for the next tick.
|
|
215
|
+
* Messages are also available in TickState.queuedMessages during render.
|
|
216
|
+
*
|
|
217
|
+
* @param ctx The persistent Context Object Model for this execution.
|
|
218
|
+
* @param message The message sent to the execution.
|
|
219
|
+
* @param state Current tick state.
|
|
220
|
+
*
|
|
221
|
+
* @example
|
|
222
|
+
* ```typescript
|
|
223
|
+
* class InteractiveAgent extends Component {
|
|
224
|
+
* onMessage(ctx, message, state) {
|
|
225
|
+
* if (message.type === 'stop') {
|
|
226
|
+
* ctx.abort('User requested stop');
|
|
227
|
+
* } else if (message.type === 'feedback') {
|
|
228
|
+
* ctx.setState('userFeedback', message.content);
|
|
229
|
+
* }
|
|
230
|
+
* }
|
|
231
|
+
* }
|
|
232
|
+
* ```
|
|
233
|
+
*/
|
|
234
|
+
onMessage?: (ctx: COM, message: ExecutionMessage, state: TickState) => Promise<void> | void;
|
|
235
|
+
/**
|
|
236
|
+
* Called when an error occurs during engine execution.
|
|
237
|
+
* Components can use this to handle errors and potentially recover.
|
|
238
|
+
*
|
|
239
|
+
* @param ctx The persistent Context Object Model for this execution.
|
|
240
|
+
* @param state Current tick state including error information.
|
|
241
|
+
* @returns RecoveryAction to indicate whether to continue execution, or void/undefined to let error propagate
|
|
242
|
+
*/
|
|
243
|
+
onError?: (ctx: COM, state: TickState) => Promise<RecoveryAction | void> | RecoveryAction | void;
|
|
244
|
+
}
|
|
245
|
+
export type ComponentClass = new (props?: any) => EngineComponent;
|
|
246
|
+
export type ComponentFactory = (props?: any) => EngineComponent | Promise<EngineComponent>;
|
|
247
|
+
export type PureFunctionComponent<P = any> = ((props: P) => JSX.Element | null) | ((props: P, ctx: COM, state: TickState) => JSX.Element | null);
|
|
248
|
+
export type ComponentDefinition = EngineComponent | ComponentClass | ComponentFactory | PureFunctionComponent | JSX.Element;
|
|
249
|
+
/**
|
|
250
|
+
* Base class for Stateful Components
|
|
251
|
+
*/
|
|
252
|
+
export declare abstract class Component<P = {}, S = {}> implements EngineComponent {
|
|
253
|
+
static hooks: Record<string, ComponentHookMiddleware<any>[]>;
|
|
254
|
+
static tags: string[];
|
|
255
|
+
private hooksRegistry;
|
|
256
|
+
get hooks(): ComponentHookRegistry;
|
|
257
|
+
props: P;
|
|
258
|
+
state: S;
|
|
259
|
+
constructor(props?: P);
|
|
260
|
+
private registerStaticHooks;
|
|
261
|
+
onMount(_ctx: COM): void;
|
|
262
|
+
onUnmount(_ctx: COM): void;
|
|
263
|
+
onStart(_ctx: COM): void;
|
|
264
|
+
onTickStart(_ctx: COM, _state: TickState): void;
|
|
265
|
+
onAfterCompile(_ctx: COM, _compiled: CompiledStructure, _state: TickState, _afterCompileCtx: AfterCompileContext): void;
|
|
266
|
+
onTickEnd(_ctx: COM, _state: TickState): void;
|
|
267
|
+
onComplete(_ctx: COM, _finalState: COMInput): void;
|
|
268
|
+
onError(_ctx: COM, _state: TickState): RecoveryAction | void;
|
|
269
|
+
onMessage(_ctx: COM, _message: ExecutionMessage, _state: TickState): void | Promise<void>;
|
|
270
|
+
render(_ctx: COM, _state: TickState): Promise<void | JSX.Element | null> | void | JSX.Element | null;
|
|
271
|
+
}
|
|
272
|
+
export interface OnMount {
|
|
273
|
+
onMount: (ctx: COM) => Promise<void> | void;
|
|
274
|
+
}
|
|
275
|
+
export interface OnUnmount {
|
|
276
|
+
onUnmount: (ctx: COM) => Promise<void> | void;
|
|
277
|
+
}
|
|
278
|
+
export interface OnStart {
|
|
279
|
+
onStart: (ctx: COM) => Promise<void> | void;
|
|
280
|
+
}
|
|
281
|
+
export interface OnTickStart {
|
|
282
|
+
onTickStart: (ctx: COM, state: TickState) => Promise<void> | void;
|
|
283
|
+
}
|
|
284
|
+
export interface OnAfterCompile {
|
|
285
|
+
onAfterCompile: (ctx: COM, compiled: CompiledStructure, state: TickState, afterCompileCtx: AfterCompileContext) => Promise<void> | void;
|
|
286
|
+
}
|
|
287
|
+
export interface OnTickEnd {
|
|
288
|
+
onTickEnd: (ctx: COM, state: TickState) => Promise<void> | void;
|
|
289
|
+
}
|
|
290
|
+
export interface OnComplete {
|
|
291
|
+
onComplete: (ctx: COM, finalState: COMInput) => Promise<void> | void;
|
|
292
|
+
}
|
|
293
|
+
export interface OnError {
|
|
294
|
+
onError: (ctx: COM, state: TickState) => Promise<RecoveryAction | void> | RecoveryAction | void;
|
|
295
|
+
}
|
|
296
|
+
export interface OnMessage {
|
|
297
|
+
onMessage: (ctx: COM, message: ExecutionMessage, state: TickState) => Promise<void> | void;
|
|
298
|
+
}
|
|
299
|
+
export interface Render {
|
|
300
|
+
render: (ctx: COM, state: TickState) => Promise<void | JSX.Element | null> | void | JSX.Element | null;
|
|
301
|
+
}
|
|
302
|
+
export interface ComponentLifecycleHooks {
|
|
303
|
+
onMount?: OnMount;
|
|
304
|
+
onUnmount?: OnUnmount;
|
|
305
|
+
onStart?: OnStart;
|
|
306
|
+
onTickStart?: OnTickStart;
|
|
307
|
+
onAfterCompile?: OnAfterCompile;
|
|
308
|
+
onTickEnd?: OnTickEnd;
|
|
309
|
+
onMessage?: OnMessage;
|
|
310
|
+
onComplete?: OnComplete;
|
|
311
|
+
onError?: OnError;
|
|
312
|
+
render?: Render;
|
|
313
|
+
}
|
|
314
|
+
//# sourceMappingURL=component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../src/component/component.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { ComponentHookRegistry, } from "./component-hooks";
|
|
2
|
+
import {} from "../compiler/types";
|
|
3
|
+
/**
|
|
4
|
+
* Base class for Stateful Components
|
|
5
|
+
*/
|
|
6
|
+
export class Component {
|
|
7
|
+
static hooks = {};
|
|
8
|
+
static tags = [];
|
|
9
|
+
hooksRegistry;
|
|
10
|
+
get hooks() {
|
|
11
|
+
return this.hooksRegistry;
|
|
12
|
+
}
|
|
13
|
+
props;
|
|
14
|
+
state;
|
|
15
|
+
constructor(props = {}) {
|
|
16
|
+
this.hooksRegistry = new ComponentHookRegistry();
|
|
17
|
+
this.registerStaticHooks();
|
|
18
|
+
this.props = props;
|
|
19
|
+
this.state = {};
|
|
20
|
+
}
|
|
21
|
+
registerStaticHooks() {
|
|
22
|
+
const componentClass = this.constructor;
|
|
23
|
+
const staticHooks = componentClass.hooks;
|
|
24
|
+
if (!staticHooks) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
for (const [hookName, middleware] of Object.entries(staticHooks)) {
|
|
28
|
+
if (middleware && Array.isArray(middleware)) {
|
|
29
|
+
for (const mw of middleware) {
|
|
30
|
+
this.hooksRegistry.register(hookName, mw);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
// Default implementations - all optional
|
|
36
|
+
// Note: Signal binding and ref handling are now done automatically by the compiler.
|
|
37
|
+
// Components can override onMount/onUnmount for custom logic, but don't need to
|
|
38
|
+
// call super.onMount()/super.onUnmount() for basic signal/ref handling.
|
|
39
|
+
onMount(_ctx) {
|
|
40
|
+
// Override for custom mount logic
|
|
41
|
+
// Signal binding and ref handling are handled automatically by the compiler
|
|
42
|
+
}
|
|
43
|
+
onUnmount(_ctx) {
|
|
44
|
+
// Override for custom unmount logic
|
|
45
|
+
// Signal cleanup and ref removal are handled automatically by the compiler
|
|
46
|
+
}
|
|
47
|
+
onStart(_ctx) { }
|
|
48
|
+
onTickStart(_ctx, _state) { }
|
|
49
|
+
onAfterCompile(_ctx, _compiled, _state, _afterCompileCtx) { }
|
|
50
|
+
onTickEnd(_ctx, _state) { }
|
|
51
|
+
onComplete(_ctx, _finalState) { }
|
|
52
|
+
onError(_ctx, _state) {
|
|
53
|
+
// Default: let error propagate (no recovery)
|
|
54
|
+
return undefined;
|
|
55
|
+
}
|
|
56
|
+
onMessage(_ctx, _message, _state) {
|
|
57
|
+
// Override to handle messages sent to the execution
|
|
58
|
+
}
|
|
59
|
+
// Render is optional - components can just manage state or provide side effects
|
|
60
|
+
render(_ctx, _state) {
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component.js","sourceRoot":"","sources":["../../src/component/component.ts"],"names":[],"mappings":"AAKA,OAAO,EAGL,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAA0B,MAAM,mBAAmB,CAAC;AA+S3D;;GAEG;AACH,MAAM,OAAgB,SAAS;IAC7B,MAAM,CAAC,KAAK,GAAmD,EAAE,CAAC;IAClE,MAAM,CAAC,IAAI,GAAa,EAAE,CAAC;IAEnB,aAAa,CAAwB;IAE7C,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,KAAK,CAAI;IACT,KAAK,CAAI;IAET,YAAY,QAAW,EAAO;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,qBAAqB,EAAE,CAAC;QACjD,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,EAAO,CAAC;IACvB,CAAC;IAEO,mBAAmB;QACzB,MAAM,cAAc,GAAG,IAAI,CAAC,WAA+B,CAAC;QAC5D,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC;QAEzC,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QAED,KAAK,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YACjE,IAAI,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC5C,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;oBAC5B,IAAI,CAAC,aAAa,CAAC,QAAQ,CACzB,QAA6B,EAC7B,EAAgD,CACjD,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,yCAAyC;IACzC,oFAAoF;IACpF,gFAAgF;IAChF,wEAAwE;IACxE,OAAO,CAAC,IAAS;QACf,kCAAkC;QAClC,4EAA4E;IAC9E,CAAC;IAED,SAAS,CAAC,IAAS;QACjB,oCAAoC;QACpC,2EAA2E;IAC7E,CAAC;IACD,OAAO,CAAC,IAAS,IAAG,CAAC;IACrB,WAAW,CAAC,IAAS,EAAE,MAAiB,IAAG,CAAC;IAC5C,cAAc,CACZ,IAAS,EACT,SAA4B,EAC5B,MAAiB,EACjB,gBAAqC,IACpC,CAAC;IACJ,SAAS,CAAC,IAAS,EAAE,MAAiB,IAAG,CAAC;IAC1C,UAAU,CAAC,IAAS,EAAE,WAAqB,IAAS,CAAC;IACrD,OAAO,CAAC,IAAS,EAAE,MAAiB;QAClC,6CAA6C;QAC7C,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,SAAS,CAAC,IAAS,EAAE,QAA0B,EAAE,MAAiB;QAChE,oDAAoD;IACtD,CAAC;IAED,gFAAgF;IAChF,MAAM,CACJ,IAAS,EACT,MAAiB;QAEjB,OAAO,IAAI,CAAC;IACd,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* # Agentick Components
|
|
3
|
+
*
|
|
4
|
+
* Base component system for Agentick agents. Provides class-based components
|
|
5
|
+
* with lifecycle hooks, signals, and render methods.
|
|
6
|
+
*
|
|
7
|
+
* ## Features
|
|
8
|
+
*
|
|
9
|
+
* - **Lifecycle Hooks** - onMount, onUnmount, onTickStart, onTickEnd
|
|
10
|
+
* - **Signals** - Reactive state within components
|
|
11
|
+
* - **Render Method** - JSX output for each tick
|
|
12
|
+
*
|
|
13
|
+
* ## Quick Start
|
|
14
|
+
*
|
|
15
|
+
* ```tsx
|
|
16
|
+
* import { Component } from 'agentick';
|
|
17
|
+
*
|
|
18
|
+
* class MyAgent extends Component {
|
|
19
|
+
* count = signal(0);
|
|
20
|
+
*
|
|
21
|
+
* onMount() {
|
|
22
|
+
* console.log('Agent mounted');
|
|
23
|
+
* }
|
|
24
|
+
*
|
|
25
|
+
* onTickStart(ctx, state) {
|
|
26
|
+
* this.count.value++;
|
|
27
|
+
* }
|
|
28
|
+
*
|
|
29
|
+
* render() {
|
|
30
|
+
* return (
|
|
31
|
+
* <>
|
|
32
|
+
* <System>You are helpful.</System>
|
|
33
|
+
* <User>Count: {this.count.value}</User>
|
|
34
|
+
* </>
|
|
35
|
+
* );
|
|
36
|
+
* }
|
|
37
|
+
* }
|
|
38
|
+
* ```
|
|
39
|
+
*
|
|
40
|
+
* @see {@link Component} - Base component class
|
|
41
|
+
* @see {@link ComponentLifecycleHooks} - Lifecycle hook interfaces
|
|
42
|
+
*
|
|
43
|
+
* @module agentick/component
|
|
44
|
+
*/
|
|
45
|
+
export * from "./component";
|
|
46
|
+
export * from "./component-hooks";
|
|
47
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/component/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* # Agentick Components
|
|
3
|
+
*
|
|
4
|
+
* Base component system for Agentick agents. Provides class-based components
|
|
5
|
+
* with lifecycle hooks, signals, and render methods.
|
|
6
|
+
*
|
|
7
|
+
* ## Features
|
|
8
|
+
*
|
|
9
|
+
* - **Lifecycle Hooks** - onMount, onUnmount, onTickStart, onTickEnd
|
|
10
|
+
* - **Signals** - Reactive state within components
|
|
11
|
+
* - **Render Method** - JSX output for each tick
|
|
12
|
+
*
|
|
13
|
+
* ## Quick Start
|
|
14
|
+
*
|
|
15
|
+
* ```tsx
|
|
16
|
+
* import { Component } from 'agentick';
|
|
17
|
+
*
|
|
18
|
+
* class MyAgent extends Component {
|
|
19
|
+
* count = signal(0);
|
|
20
|
+
*
|
|
21
|
+
* onMount() {
|
|
22
|
+
* console.log('Agent mounted');
|
|
23
|
+
* }
|
|
24
|
+
*
|
|
25
|
+
* onTickStart(ctx, state) {
|
|
26
|
+
* this.count.value++;
|
|
27
|
+
* }
|
|
28
|
+
*
|
|
29
|
+
* render() {
|
|
30
|
+
* return (
|
|
31
|
+
* <>
|
|
32
|
+
* <System>You are helpful.</System>
|
|
33
|
+
* <User>Count: {this.count.value}</User>
|
|
34
|
+
* </>
|
|
35
|
+
* );
|
|
36
|
+
* }
|
|
37
|
+
* }
|
|
38
|
+
* ```
|
|
39
|
+
*
|
|
40
|
+
* @see {@link Component} - Base component class
|
|
41
|
+
* @see {@link ComponentLifecycleHooks} - Lifecycle hook interfaces
|
|
42
|
+
*
|
|
43
|
+
* @module agentick/component
|
|
44
|
+
*/
|
|
45
|
+
export * from "./component";
|
|
46
|
+
export * from "./component-hooks";
|
|
47
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/component/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TentickleComponent - React.Component base class for Tentickle
|
|
3
|
+
*
|
|
4
|
+
* Extends React.Component to work seamlessly with the reconciler while providing
|
|
5
|
+
* access to Tentickle-specific features like COM, TickState, and lifecycle hooks.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```tsx
|
|
9
|
+
* class MyAgent extends TentickleComponent {
|
|
10
|
+
* onTickStart() {
|
|
11
|
+
* console.log(`Tick ${this.tickState.tick} starting`);
|
|
12
|
+
* }
|
|
13
|
+
*
|
|
14
|
+
* render() {
|
|
15
|
+
* const history = this.tickState.previous?.timeline ?? [];
|
|
16
|
+
* return (
|
|
17
|
+
* <>
|
|
18
|
+
* <Section id="system" audience="model">
|
|
19
|
+
* You are a helpful assistant.
|
|
20
|
+
* </Section>
|
|
21
|
+
* {history.map((entry, i) => (
|
|
22
|
+
* <Message key={i} {...entry.message} />
|
|
23
|
+
* ))}
|
|
24
|
+
* </>
|
|
25
|
+
* );
|
|
26
|
+
* }
|
|
27
|
+
* }
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
import React, { type ReactNode } from "react";
|
|
31
|
+
import type { COM } from "../com/object-model";
|
|
32
|
+
import type { TickState, TickResult } from "../hooks/types";
|
|
33
|
+
import type { COMInput } from "../com/types";
|
|
34
|
+
import type { CompiledStructure } from "../compiler/types";
|
|
35
|
+
import type { ExecutionMessage } from "../engine/execution-types";
|
|
36
|
+
import type { RecoveryAction, AfterCompileContext } from "./component";
|
|
37
|
+
/**
|
|
38
|
+
* Internal context values provided to TentickleComponent.
|
|
39
|
+
*/
|
|
40
|
+
interface TentickleContextValues {
|
|
41
|
+
com: COM | null;
|
|
42
|
+
tickState: TickState | null;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Props type that TentickleComponent accepts.
|
|
46
|
+
*/
|
|
47
|
+
export interface TentickleComponentProps {
|
|
48
|
+
children?: ReactNode;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Base class for class-based Tentickle components.
|
|
52
|
+
*
|
|
53
|
+
* Extends React.Component and provides:
|
|
54
|
+
* - Access to COM via `this.com`
|
|
55
|
+
* - Access to TickState via `this.tickState`
|
|
56
|
+
* - Tentickle lifecycle methods (onMount, onTickStart, etc.)
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* ```tsx
|
|
60
|
+
* class TaskAgent extends TentickleComponent<{ maxTasks?: number }> {
|
|
61
|
+
* onMount() {
|
|
62
|
+
* console.log('Agent mounted');
|
|
63
|
+
* }
|
|
64
|
+
*
|
|
65
|
+
* onTickStart() {
|
|
66
|
+
* console.log(`Starting tick ${this.tickState.tick}`);
|
|
67
|
+
* }
|
|
68
|
+
*
|
|
69
|
+
* render() {
|
|
70
|
+
* return (
|
|
71
|
+
* <Section id="system" audience="model">
|
|
72
|
+
* You can manage up to {this.props.maxTasks ?? 10} tasks.
|
|
73
|
+
* </Section>
|
|
74
|
+
* );
|
|
75
|
+
* }
|
|
76
|
+
* }
|
|
77
|
+
*
|
|
78
|
+
* // Usage
|
|
79
|
+
* <TaskAgent maxTasks={5} />
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
export declare abstract class TentickleComponent<P extends object = {}, S = {}> extends React.Component<P & TentickleComponentProps, S> {
|
|
83
|
+
private _com;
|
|
84
|
+
private _tickState;
|
|
85
|
+
private _mounted;
|
|
86
|
+
private _lastTick;
|
|
87
|
+
/**
|
|
88
|
+
* Access the Context Object Model.
|
|
89
|
+
* Provides access to timeline, sections, tools, state, and more.
|
|
90
|
+
*/
|
|
91
|
+
protected get com(): COM;
|
|
92
|
+
/**
|
|
93
|
+
* Access the current tick state.
|
|
94
|
+
* Provides tick number, previous output, current output, and stop control.
|
|
95
|
+
*/
|
|
96
|
+
protected get tickState(): TickState;
|
|
97
|
+
/**
|
|
98
|
+
* Shortcut to get the previous timeline (conversation history).
|
|
99
|
+
*/
|
|
100
|
+
protected get history(): import("../com").COMTimelineEntry[];
|
|
101
|
+
/**
|
|
102
|
+
* Shortcut to get the current tick number.
|
|
103
|
+
*/
|
|
104
|
+
protected get tick(): number;
|
|
105
|
+
/**
|
|
106
|
+
* Internal: Set context values from wrapper.
|
|
107
|
+
*/
|
|
108
|
+
_setContextValues(values: TentickleContextValues): void;
|
|
109
|
+
/**
|
|
110
|
+
* Internal: Render with lifecycle management.
|
|
111
|
+
*
|
|
112
|
+
* Note: onTickEnd is not called from class components directly.
|
|
113
|
+
* Use useTickEnd hook or createTool for tick end callbacks.
|
|
114
|
+
*/
|
|
115
|
+
_renderWithLifecycle(): React.ReactElement | null;
|
|
116
|
+
/**
|
|
117
|
+
* Called when the component is first mounted.
|
|
118
|
+
* Use for initialization, registering tools, etc.
|
|
119
|
+
*/
|
|
120
|
+
onMount?(): void | Promise<void>;
|
|
121
|
+
/**
|
|
122
|
+
* Called when the component is unmounted.
|
|
123
|
+
* Use for cleanup.
|
|
124
|
+
*/
|
|
125
|
+
onUnmount?(): void | Promise<void>;
|
|
126
|
+
/**
|
|
127
|
+
* Called at the start of each tick.
|
|
128
|
+
* Use for per-tick initialization or state updates.
|
|
129
|
+
* Receives COM and TickState for consistency with hooks API.
|
|
130
|
+
*/
|
|
131
|
+
onTickStart?(com: COM, tickState: TickState): void | Promise<void>;
|
|
132
|
+
/**
|
|
133
|
+
* Called at the end of each tick.
|
|
134
|
+
* Use for per-tick cleanup, side effects, or continuation control.
|
|
135
|
+
* Receives COM and TickResult with response data and control methods.
|
|
136
|
+
*/
|
|
137
|
+
onTickEnd?(com: COM, result: TickResult): void | Promise<void>;
|
|
138
|
+
/**
|
|
139
|
+
* Called after compilation, before model execution.
|
|
140
|
+
* Use to inspect or modify the compiled structure.
|
|
141
|
+
*/
|
|
142
|
+
onAfterCompile?(compiled: CompiledStructure, ctx: AfterCompileContext): void | Promise<void>;
|
|
143
|
+
/**
|
|
144
|
+
* Called when execution completes.
|
|
145
|
+
* Use for final cleanup or persistence.
|
|
146
|
+
*/
|
|
147
|
+
onComplete?(finalState: COMInput): void | Promise<void>;
|
|
148
|
+
/**
|
|
149
|
+
* Called when a message is received during execution.
|
|
150
|
+
*/
|
|
151
|
+
onMessage?(message: ExecutionMessage): void | Promise<void>;
|
|
152
|
+
/**
|
|
153
|
+
* Called when an error occurs.
|
|
154
|
+
* Return a RecoveryAction to handle the error.
|
|
155
|
+
*/
|
|
156
|
+
onError?(): RecoveryAction | void;
|
|
157
|
+
/**
|
|
158
|
+
* Render the component's JSX output.
|
|
159
|
+
* Override this to define your component's UI.
|
|
160
|
+
*/
|
|
161
|
+
abstract render(): ReactNode;
|
|
162
|
+
componentWillUnmount(): void;
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Create a functional component from a TentickleComponent class.
|
|
166
|
+
*
|
|
167
|
+
* This is needed because React's reconciler needs a function component
|
|
168
|
+
* to consume contexts and create the class instance.
|
|
169
|
+
*
|
|
170
|
+
* @example
|
|
171
|
+
* ```tsx
|
|
172
|
+
* class MyAgent extends TentickleComponent {
|
|
173
|
+
* render() { return <Section id="system">Hello</Section>; }
|
|
174
|
+
* }
|
|
175
|
+
*
|
|
176
|
+
* // Create the usable component
|
|
177
|
+
* const MyAgentComponent = createClassComponent(MyAgent);
|
|
178
|
+
*
|
|
179
|
+
* // Use in JSX
|
|
180
|
+
* <MyAgentComponent />
|
|
181
|
+
* ```
|
|
182
|
+
*/
|
|
183
|
+
export declare function createClassComponent<P extends object>(ComponentClass: new (props: P) => TentickleComponent<P>): React.FC<P>;
|
|
184
|
+
export type { TentickleContextValues, AfterCompileContext, RecoveryAction };
|
|
185
|
+
//# sourceMappingURL=tentickle-component.d.ts.map
|