@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,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* V2 Reconciler Types
|
|
3
|
+
*
|
|
4
|
+
* Core types for the react-reconciler based implementation.
|
|
5
|
+
*/
|
|
6
|
+
import type { Renderer } from "../renderers/types";
|
|
7
|
+
/**
|
|
8
|
+
* A node in the Agentick tree built by react-reconciler.
|
|
9
|
+
* This is the "host instance" in React terminology.
|
|
10
|
+
*/
|
|
11
|
+
export interface AgentickNode {
|
|
12
|
+
/** Component type (function, class, string for intrinsics, symbol for Fragment) */
|
|
13
|
+
type: AgentickNodeType;
|
|
14
|
+
/** Props passed to the component */
|
|
15
|
+
props: Record<string, unknown>;
|
|
16
|
+
/** Child nodes */
|
|
17
|
+
children: AgentickNode[];
|
|
18
|
+
/** Parent node (for traversal) */
|
|
19
|
+
parent: AgentickNode | null;
|
|
20
|
+
/** Renderer context inherited from ancestors */
|
|
21
|
+
renderer: Renderer | null;
|
|
22
|
+
/** Unique key for reconciliation */
|
|
23
|
+
key: string | number | null;
|
|
24
|
+
/** Index among siblings */
|
|
25
|
+
index: number;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Valid node types in the tree.
|
|
29
|
+
*/
|
|
30
|
+
export type AgentickNodeType = string | ((...args: unknown[]) => unknown) | {
|
|
31
|
+
new (...args: unknown[]): unknown;
|
|
32
|
+
} | symbol;
|
|
33
|
+
/**
|
|
34
|
+
* The container (root) of the Agentick tree.
|
|
35
|
+
*/
|
|
36
|
+
export interface AgentickContainer {
|
|
37
|
+
/** Root children */
|
|
38
|
+
children: AgentickNode[];
|
|
39
|
+
/** Default renderer for the tree */
|
|
40
|
+
renderer: Renderer;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Host context passed through the tree.
|
|
44
|
+
* Used for nested renderer inheritance.
|
|
45
|
+
*/
|
|
46
|
+
export interface HostContext {
|
|
47
|
+
/** Current renderer in scope */
|
|
48
|
+
renderer: Renderer;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Props type (generic record).
|
|
52
|
+
*/
|
|
53
|
+
export type Props = Record<string, unknown>;
|
|
54
|
+
/**
|
|
55
|
+
* Update payload for commitUpdate.
|
|
56
|
+
*/
|
|
57
|
+
export interface UpdatePayload {
|
|
58
|
+
props: Props;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Create a new AgentickNode.
|
|
62
|
+
*/
|
|
63
|
+
export declare function createNode(type: AgentickNodeType, props: Props, renderer: Renderer | null, key?: string | number | null): AgentickNode;
|
|
64
|
+
/**
|
|
65
|
+
* A text node in the Agentick tree.
|
|
66
|
+
* Represents raw text content.
|
|
67
|
+
*/
|
|
68
|
+
export interface AgentickTextNode {
|
|
69
|
+
/** Text content */
|
|
70
|
+
text: string;
|
|
71
|
+
/** Parent node */
|
|
72
|
+
parent: AgentickNode | null;
|
|
73
|
+
/** Index among siblings */
|
|
74
|
+
index: number;
|
|
75
|
+
/** Marker to distinguish from regular nodes */
|
|
76
|
+
isTextNode: true;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Create a text node.
|
|
80
|
+
*/
|
|
81
|
+
export declare function createTextNode(text: string): AgentickTextNode;
|
|
82
|
+
/**
|
|
83
|
+
* Check if a node is a text node.
|
|
84
|
+
*/
|
|
85
|
+
export declare function isTextNode(node: AgentickNode | AgentickTextNode): node is AgentickTextNode;
|
|
86
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/reconciler/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAEnD;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,mFAAmF;IACnF,IAAI,EAAE,gBAAgB,CAAC;IAEvB,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE/B,kBAAkB;IAClB,QAAQ,EAAE,YAAY,EAAE,CAAC;IAEzB,kCAAkC;IAClC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IAE5B,gDAAgD;IAChD,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAE1B,oCAAoC;IACpC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAE5B,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GACxB,MAAM,GACN,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,GACjC;IAAE,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;CAAE,GACrC,MAAM,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,oBAAoB;IACpB,QAAQ,EAAE,YAAY,EAAE,CAAC;IAEzB,oCAAoC;IACpC,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,gCAAgC;IAChC,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE5C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,KAAK,CAAC;CACd;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,GAAG,IAAI,EACzB,GAAG,GAAE,MAAM,GAAG,MAAM,GAAG,IAAW,GACjC,YAAY,CAUd;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;IAEb,kBAAkB;IAClB,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IAE5B,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAC;IAEd,+CAA+C;IAC/C,UAAU,EAAE,IAAI,CAAC;CAClB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAO7D;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,YAAY,GAAG,gBAAgB,GAAG,IAAI,IAAI,gBAAgB,CAE1F"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* V2 Reconciler Types
|
|
3
|
+
*
|
|
4
|
+
* Core types for the react-reconciler based implementation.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Create a new AgentickNode.
|
|
8
|
+
*/
|
|
9
|
+
export function createNode(type, props, renderer, key = null) {
|
|
10
|
+
return {
|
|
11
|
+
type,
|
|
12
|
+
props,
|
|
13
|
+
children: [],
|
|
14
|
+
parent: null,
|
|
15
|
+
renderer,
|
|
16
|
+
key,
|
|
17
|
+
index: 0,
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Create a text node.
|
|
22
|
+
*/
|
|
23
|
+
export function createTextNode(text) {
|
|
24
|
+
return {
|
|
25
|
+
text,
|
|
26
|
+
parent: null,
|
|
27
|
+
index: 0,
|
|
28
|
+
isTextNode: true,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Check if a node is a text node.
|
|
33
|
+
*/
|
|
34
|
+
export function isTextNode(node) {
|
|
35
|
+
return "isTextNode" in node && node.isTextNode === true;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/reconciler/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAwEH;;GAEG;AACH,MAAM,UAAU,UAAU,CACxB,IAAsB,EACtB,KAAY,EACZ,QAAyB,EACzB,MAA8B,IAAI;IAElC,OAAO;QACL,IAAI;QACJ,KAAK;QACL,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,IAAI;QACZ,QAAQ;QACR,GAAG;QACH,KAAK,EAAE,CAAC;KACT,CAAC;AACJ,CAAC;AAoBD;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO;QACL,IAAI;QACJ,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,CAAC;QACR,UAAU,EAAE,IAAI;KACjB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,IAAqC;IAC9D,OAAO,YAAY,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC;AAC1D,CAAC"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import type { ContentBlock } from "@agentick/shared";
|
|
2
|
+
/**
|
|
3
|
+
* Formatter function type.
|
|
4
|
+
* Transforms semantic content blocks into formatted content blocks.
|
|
5
|
+
* This is the public API for formatting - ContentRenderer is an internal implementation detail.
|
|
6
|
+
*/
|
|
7
|
+
export type Formatter = (blocks: SemanticContentBlock[]) => ContentBlock[];
|
|
8
|
+
/**
|
|
9
|
+
* Semantic node representing structured content with formatting information.
|
|
10
|
+
* This is a tree structure where each node can have text, semantic type, and children.
|
|
11
|
+
*
|
|
12
|
+
* Design principle:
|
|
13
|
+
* - Capitalized components (<Image>, <Audio>) create native ContentBlocks (structural)
|
|
14
|
+
* - Lowercase HTML elements (<img>, <audio>) become semantic nodes with props
|
|
15
|
+
* and the formatter converts them to inline representations (e.g., markdown )
|
|
16
|
+
*
|
|
17
|
+
* Example:
|
|
18
|
+
* ```typescript
|
|
19
|
+
* {
|
|
20
|
+
* children: [
|
|
21
|
+
* { text: 'Hello ' },
|
|
22
|
+
* {
|
|
23
|
+
* semantic: 'strong',
|
|
24
|
+
* children: [{ text: 'world' }]
|
|
25
|
+
* },
|
|
26
|
+
* { text: ' with ' },
|
|
27
|
+
* {
|
|
28
|
+
* semantic: 'image',
|
|
29
|
+
* props: { src: 'photo.jpg', alt: 'A photo' }
|
|
30
|
+
* }
|
|
31
|
+
* ]
|
|
32
|
+
* }
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
export type SemanticNode = {
|
|
36
|
+
/** Plain text content (leaf nodes) */
|
|
37
|
+
text?: string;
|
|
38
|
+
/** Semantic type for formatting (strong, em, code, etc.) */
|
|
39
|
+
semantic?: SemanticType;
|
|
40
|
+
/** Props for semantic nodes (e.g., src/alt for images, href for links) */
|
|
41
|
+
props?: Record<string, any>;
|
|
42
|
+
/** Child nodes (for nested formatting) */
|
|
43
|
+
children?: SemanticNode[];
|
|
44
|
+
/** Formatter to use for this subtree (enables nested formatter switching) */
|
|
45
|
+
formatter?: Formatter;
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* Semantic types for inline and block formatting.
|
|
49
|
+
*
|
|
50
|
+
* Note: Media types (image, audio, video) are for semantic usage only (from <img>, <audio>, <video>).
|
|
51
|
+
* The capitalized components (<Image>, <Audio>, <Video>) create native ContentBlocks, not semantic nodes.
|
|
52
|
+
*/
|
|
53
|
+
export type SemanticType = "strong" | "em" | "mark" | "underline" | "strikethrough" | "subscript" | "superscript" | "small" | "code" | "heading" | "list" | "table" | "paragraph" | "blockquote" | "line-break" | "horizontal-rule" | "image" | "audio" | "video" | "link" | "quote" | "citation" | "keyboard" | "variable" | "list-item" | "custom" | "preformatted";
|
|
54
|
+
/**
|
|
55
|
+
* Extended ContentBlock with semantic information for renderers.
|
|
56
|
+
* Semantic metadata helps renderers format content appropriately.
|
|
57
|
+
*
|
|
58
|
+
* Note: This is a type alias that extends ContentBlock with optional semantic metadata.
|
|
59
|
+
* All SemanticContentBlocks are valid ContentBlocks.
|
|
60
|
+
*/
|
|
61
|
+
export type SemanticContentBlock = ContentBlock & {
|
|
62
|
+
/** Semantic node tree representing structured content with formatting hints */
|
|
63
|
+
semanticNode?: SemanticNode;
|
|
64
|
+
/** Legacy semantic metadata (kept for backward compatibility) */
|
|
65
|
+
semantic?: {
|
|
66
|
+
type: SemanticType;
|
|
67
|
+
level?: number;
|
|
68
|
+
structure?: any;
|
|
69
|
+
href?: string;
|
|
70
|
+
rendererTag?: string;
|
|
71
|
+
rendererAttrs?: Record<string, any>;
|
|
72
|
+
preformatted?: boolean;
|
|
73
|
+
};
|
|
74
|
+
};
|
|
75
|
+
/**
|
|
76
|
+
* Abstract base class for content renderers.
|
|
77
|
+
* Renderers transform SemanticContentBlocks into formatted ContentBlocks.
|
|
78
|
+
*
|
|
79
|
+
* Renderers can:
|
|
80
|
+
* - Format semantic primitives (H1, List, Table, etc.)
|
|
81
|
+
* - Handle custom renderer-specific tags
|
|
82
|
+
* - Format standard ContentBlocks
|
|
83
|
+
*/
|
|
84
|
+
export declare abstract class Renderer {
|
|
85
|
+
/**
|
|
86
|
+
* Optional: Define custom primitives this renderer understands.
|
|
87
|
+
* These are custom tags that can be used inside this renderer's scope.
|
|
88
|
+
*
|
|
89
|
+
* Example: XMLRenderer might return ['timestamp', 'custom-tag']
|
|
90
|
+
*/
|
|
91
|
+
getCustomPrimitives?(): string[];
|
|
92
|
+
format(blocks: SemanticContentBlock[]): ContentBlock[];
|
|
93
|
+
abstract formatNode(node: SemanticNode): string;
|
|
94
|
+
abstract formatSemantic(block: SemanticContentBlock): ContentBlock | null;
|
|
95
|
+
abstract formatStandard(block: SemanticContentBlock): ContentBlock[];
|
|
96
|
+
protected abstract applyBlockLevelFormatting(block: SemanticContentBlock, formattedText: string): string;
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=base.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/renderers/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAa,MAAM,kBAAkB,CAAC;AAEhE;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,oBAAoB,EAAE,KAAK,YAAY,EAAE,CAAC;AAE3E;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,sCAAsC;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,0EAA0E;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAC1B,6EAA6E;IAC7E,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAEpB,QAAQ,GACR,IAAI,GACJ,MAAM,GACN,WAAW,GACX,eAAe,GACf,WAAW,GACX,aAAa,GACb,OAAO,GACP,MAAM,GAEN,SAAS,GACT,MAAM,GACN,OAAO,GACP,WAAW,GACX,YAAY,GACZ,YAAY,GACZ,iBAAiB,GAEjB,OAAO,GACP,OAAO,GACP,OAAO,GAEP,MAAM,GACN,OAAO,GACP,UAAU,GACV,UAAU,GACV,UAAU,GACV,WAAW,GAEX,QAAQ,GACR,cAAc,CAAC;AAEnB;;;;;;GAMG;AACH,MAAM,MAAM,oBAAoB,GAAG,YAAY,GAAG;IAChD,+EAA+E;IAC/E,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B,iEAAiE;IACjE,QAAQ,CAAC,EAAE;QACT,IAAI,EAAE,YAAY,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,GAAG,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QAEd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAGpC,YAAY,CAAC,EAAE,OAAO,CAAC;KACxB,CAAC;CACH,CAAC;AAEF;;;;;;;;GAQG;AACH,8BAAsB,QAAQ;IAC5B;;;;;OAKG;IACH,mBAAmB,CAAC,IAAI,MAAM,EAAE;IAIhC,MAAM,CAAC,MAAM,EAAE,oBAAoB,EAAE,GAAG,YAAY,EAAE;IAuEtD,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM;IAC/C,QAAQ,CAAC,cAAc,CAAC,KAAK,EAAE,oBAAoB,GAAG,YAAY,GAAG,IAAI;IACzE,QAAQ,CAAC,cAAc,CAAC,KAAK,EAAE,oBAAoB,GAAG,YAAY,EAAE;IACpE,SAAS,CAAC,QAAQ,CAAC,yBAAyB,CAC1C,KAAK,EAAE,oBAAoB,EAC3B,aAAa,EAAE,MAAM,GACpB,MAAM;CACV"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Abstract base class for content renderers.
|
|
3
|
+
* Renderers transform SemanticContentBlocks into formatted ContentBlocks.
|
|
4
|
+
*
|
|
5
|
+
* Renderers can:
|
|
6
|
+
* - Format semantic primitives (H1, List, Table, etc.)
|
|
7
|
+
* - Handle custom renderer-specific tags
|
|
8
|
+
* - Format standard ContentBlocks
|
|
9
|
+
*/
|
|
10
|
+
export class Renderer {
|
|
11
|
+
/**
|
|
12
|
+
* Optional: Define custom primitives this renderer understands.
|
|
13
|
+
* These are custom tags that can be used inside this renderer's scope.
|
|
14
|
+
*
|
|
15
|
+
* Example: XMLRenderer might return ['timestamp', 'custom-tag']
|
|
16
|
+
*/
|
|
17
|
+
getCustomPrimitives() {
|
|
18
|
+
return [];
|
|
19
|
+
}
|
|
20
|
+
format(blocks) {
|
|
21
|
+
const formatted = [];
|
|
22
|
+
for (const block of blocks) {
|
|
23
|
+
// Handle pre-formatted blocks (from model output)
|
|
24
|
+
// By default, pass through pre-formatted blocks unchanged
|
|
25
|
+
// Renderer can choose to re-format if desired
|
|
26
|
+
if (block.semantic?.type === "preformatted" || block.semantic?.preformatted) {
|
|
27
|
+
// Pass through as-is (already formatted)
|
|
28
|
+
formatted.push(block);
|
|
29
|
+
continue;
|
|
30
|
+
}
|
|
31
|
+
// Handle semantic node tree (new semantic-first approach)
|
|
32
|
+
if (block.semanticNode) {
|
|
33
|
+
const node = block.semanticNode;
|
|
34
|
+
// If this node has a formatter, delegate to it
|
|
35
|
+
if (node.formatter) {
|
|
36
|
+
// IMPORTANT: Clear the formatter before calling to prevent infinite recursion
|
|
37
|
+
// The formatter may call renderer.format() internally, which would see the
|
|
38
|
+
// formatter and call it again, causing infinite recursion.
|
|
39
|
+
const formatterFn = node.formatter;
|
|
40
|
+
node.formatter = undefined;
|
|
41
|
+
// Call the formatter with this block - it handles everything
|
|
42
|
+
const formattedBlocks = formatterFn([block]);
|
|
43
|
+
formatted.push(...formattedBlocks);
|
|
44
|
+
continue;
|
|
45
|
+
}
|
|
46
|
+
let formattedText = this.formatNode(node);
|
|
47
|
+
// Apply block-level formatting if needed (e.g., headings)
|
|
48
|
+
formattedText = this.applyBlockLevelFormatting(block, formattedText);
|
|
49
|
+
formatted.push({
|
|
50
|
+
type: "text",
|
|
51
|
+
text: formattedText,
|
|
52
|
+
});
|
|
53
|
+
continue;
|
|
54
|
+
}
|
|
55
|
+
// Handle legacy semantic primitives
|
|
56
|
+
if (block.semantic) {
|
|
57
|
+
const formattedBlock = this.formatSemantic(block);
|
|
58
|
+
if (formattedBlock) {
|
|
59
|
+
formatted.push(formattedBlock);
|
|
60
|
+
continue;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
// Handle standard ContentBlocks
|
|
64
|
+
// Format if block has semantic metadata OR if it's an event block
|
|
65
|
+
// Code/json blocks are passed through as-is (they'll be formatted to markdown later in fromEngineState/adapter)
|
|
66
|
+
// Native content blocks without semantic metadata should be passed through as-is
|
|
67
|
+
// This preserves native code/json/image/audio/video blocks from structural components
|
|
68
|
+
const isEventBlock = block.type === "user_action" ||
|
|
69
|
+
block.type === "system_event" ||
|
|
70
|
+
block.type === "state_change";
|
|
71
|
+
if (block.semanticNode || block.semantic || isEventBlock) {
|
|
72
|
+
formatted.push(...this.formatStandard(block));
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
// Pass through native content blocks as-is (e.g., code, json, image, audio, video from capitalized components)
|
|
76
|
+
formatted.push(block);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return formatted;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=base.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/renderers/base.ts"],"names":[],"mappings":"AAmHA;;;;;;;;GAQG;AACH,MAAM,OAAgB,QAAQ;IAC5B;;;;;OAKG;IACH,mBAAmB;QACjB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,CAAC,MAA8B;QACnC,MAAM,SAAS,GAAmB,EAAE,CAAC;QAErC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,kDAAkD;YAClD,0DAA0D;YAC1D,8CAA8C;YAC9C,IAAI,KAAK,CAAC,QAAQ,EAAE,IAAI,KAAK,cAAc,IAAI,KAAK,CAAC,QAAQ,EAAE,YAAY,EAAE,CAAC;gBAC5E,yCAAyC;gBACzC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACtB,SAAS;YACX,CAAC;YAED,0DAA0D;YAC1D,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;gBACvB,MAAM,IAAI,GAAG,KAAK,CAAC,YAAY,CAAC;gBAChC,+CAA+C;gBAC/C,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;oBACnB,8EAA8E;oBAC9E,2EAA2E;oBAC3E,2DAA2D;oBAC3D,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;oBACnC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;oBAC3B,6DAA6D;oBAC7D,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC7C,SAAS,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC;oBACnC,SAAS;gBACX,CAAC;gBAED,IAAI,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBAE1C,0DAA0D;gBAC1D,aAAa,GAAG,IAAI,CAAC,yBAAyB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;gBAErE,SAAS,CAAC,IAAI,CAAC;oBACb,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,aAAa;iBACP,CAAC,CAAC;gBAChB,SAAS;YACX,CAAC;YAED,oCAAoC;YACpC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACnB,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;gBAClD,IAAI,cAAc,EAAE,CAAC;oBACnB,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;oBAC/B,SAAS;gBACX,CAAC;YACH,CAAC;YAED,gCAAgC;YAChC,kEAAkE;YAClE,gHAAgH;YAChH,iFAAiF;YACjF,sFAAsF;YACtF,MAAM,YAAY,GAChB,KAAK,CAAC,IAAI,KAAK,aAAa;gBAC5B,KAAK,CAAC,IAAI,KAAK,cAAc;gBAC7B,KAAK,CAAC,IAAI,KAAK,cAAc,CAAC;YAEhC,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,QAAQ,IAAI,YAAY,EAAE,CAAC;gBACzD,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;YAChD,CAAC;iBAAM,CAAC;gBACN,+GAA+G;gBAC/G,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;CASF"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* # Agentick Renderers
|
|
3
|
+
*
|
|
4
|
+
* Content renderers for transforming semantic content blocks into various
|
|
5
|
+
* output formats (Markdown, XML, etc.).
|
|
6
|
+
*
|
|
7
|
+
* ## Available Renderers
|
|
8
|
+
*
|
|
9
|
+
* - **MarkdownRenderer** - Render to GitHub-flavored Markdown
|
|
10
|
+
* - **XMLRenderer** - Render to XML format
|
|
11
|
+
* - **ContentRenderer** - Base class for custom renderers
|
|
12
|
+
*
|
|
13
|
+
* ## Quick Start
|
|
14
|
+
*
|
|
15
|
+
* ```typescript
|
|
16
|
+
* import { MarkdownRenderer } from 'agentick/renderers';
|
|
17
|
+
*
|
|
18
|
+
* const renderer = new MarkdownRenderer();
|
|
19
|
+
* const markdown = renderer.render(contentBlocks);
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @see {@link ContentRenderer} - Base renderer class
|
|
23
|
+
* @see {@link MarkdownRenderer} - Markdown output
|
|
24
|
+
* @see {@link XMLRenderer} - XML output
|
|
25
|
+
*
|
|
26
|
+
* @module agentick/renderers
|
|
27
|
+
*/
|
|
28
|
+
export { Renderer as ContentRenderer, Renderer, type Formatter, type SemanticContentBlock, type SemanticNode, type SemanticType, } from "./base";
|
|
29
|
+
export { MarkdownRenderer, markdownRenderer } from "./markdown";
|
|
30
|
+
export { XMLRenderer } from "./xml";
|
|
31
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/renderers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EACL,QAAQ,IAAI,eAAe,EAC3B,QAAQ,EACR,KAAK,SAAS,EACd,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,KAAK,YAAY,GAClB,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* # Agentick Renderers
|
|
3
|
+
*
|
|
4
|
+
* Content renderers for transforming semantic content blocks into various
|
|
5
|
+
* output formats (Markdown, XML, etc.).
|
|
6
|
+
*
|
|
7
|
+
* ## Available Renderers
|
|
8
|
+
*
|
|
9
|
+
* - **MarkdownRenderer** - Render to GitHub-flavored Markdown
|
|
10
|
+
* - **XMLRenderer** - Render to XML format
|
|
11
|
+
* - **ContentRenderer** - Base class for custom renderers
|
|
12
|
+
*
|
|
13
|
+
* ## Quick Start
|
|
14
|
+
*
|
|
15
|
+
* ```typescript
|
|
16
|
+
* import { MarkdownRenderer } from 'agentick/renderers';
|
|
17
|
+
*
|
|
18
|
+
* const renderer = new MarkdownRenderer();
|
|
19
|
+
* const markdown = renderer.render(contentBlocks);
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @see {@link ContentRenderer} - Base renderer class
|
|
23
|
+
* @see {@link MarkdownRenderer} - Markdown output
|
|
24
|
+
* @see {@link XMLRenderer} - XML output
|
|
25
|
+
*
|
|
26
|
+
* @module agentick/renderers
|
|
27
|
+
*/
|
|
28
|
+
export { Renderer as ContentRenderer, Renderer, } from "./base";
|
|
29
|
+
export { MarkdownRenderer, markdownRenderer } from "./markdown";
|
|
30
|
+
export { XMLRenderer } from "./xml";
|
|
31
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/renderers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EACL,QAAQ,IAAI,eAAe,EAC3B,QAAQ,GAKT,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { Renderer, type SemanticContentBlock, type SemanticNode } from "./base";
|
|
2
|
+
import type { ContentBlock } from "@agentick/shared";
|
|
3
|
+
/**
|
|
4
|
+
* Markdown renderer.
|
|
5
|
+
* Formats semantic ContentBlocks into markdown-formatted text.
|
|
6
|
+
*
|
|
7
|
+
* Supports:
|
|
8
|
+
* - Semantic primitives: H1-H6, List, Table, etc.
|
|
9
|
+
* - Standard ContentBlocks: Text, Code, Image, etc.
|
|
10
|
+
*
|
|
11
|
+
* Usage:
|
|
12
|
+
* ```jsx
|
|
13
|
+
* <Markdown>
|
|
14
|
+
* <H1>Title</H1>
|
|
15
|
+
* <Text>Content</Text>
|
|
16
|
+
* </Markdown>
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export declare class MarkdownRenderer extends Renderer {
|
|
20
|
+
private flavor?;
|
|
21
|
+
constructor(flavor?: "github" | "commonmark" | "gfm" | undefined);
|
|
22
|
+
/**
|
|
23
|
+
* Formats a semantic node tree into markdown text.
|
|
24
|
+
* Recursively processes nested semantic nodes.
|
|
25
|
+
* Supports nested formatter switching when node.formatter is present.
|
|
26
|
+
*/
|
|
27
|
+
formatNode(node: SemanticNode): string;
|
|
28
|
+
formatSemantic(block: SemanticContentBlock): ContentBlock | null;
|
|
29
|
+
/**
|
|
30
|
+
* Formats a table structure into markdown table syntax.
|
|
31
|
+
*/
|
|
32
|
+
private formatTable;
|
|
33
|
+
/**
|
|
34
|
+
* Formats a list structure into markdown list syntax.
|
|
35
|
+
*
|
|
36
|
+
* Supports:
|
|
37
|
+
* - Ordered lists (1. 2. 3.)
|
|
38
|
+
* - Unordered lists (-)
|
|
39
|
+
* - Task lists with checkboxes
|
|
40
|
+
* - Nested lists
|
|
41
|
+
*/
|
|
42
|
+
private formatList;
|
|
43
|
+
protected applyBlockLevelFormatting(block: SemanticContentBlock, formattedText: string): string;
|
|
44
|
+
formatStandard(block: SemanticContentBlock): ContentBlock[];
|
|
45
|
+
}
|
|
46
|
+
/** Default markdown renderer instance */
|
|
47
|
+
export declare const markdownRenderer: MarkdownRenderer;
|
|
48
|
+
//# sourceMappingURL=markdown.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../src/renderers/markdown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,oBAAoB,EAAE,KAAK,YAAY,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,YAAY,EAAwB,MAAM,kBAAkB,CAAC;AAG3E;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,gBAAiB,SAAQ,QAAQ;IAChC,OAAO,CAAC,MAAM,CAAC;gBAAP,MAAM,CAAC,EAAE,QAAQ,GAAG,YAAY,GAAG,KAAK,YAAA;IAI5D;;;;OAIG;IACH,UAAU,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM;IA6GtC,cAAc,CAAC,KAAK,EAAE,oBAAoB,GAAG,YAAY,GAAG,IAAI;IA4IhE;;OAEG;IACH,OAAO,CAAC,WAAW;IAyDnB;;;;;;;;OAQG;IACH,OAAO,CAAC,UAAU;IAkDlB,SAAS,CAAC,yBAAyB,CAAC,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM;IAS/F,cAAc,CAAC,KAAK,EAAE,oBAAoB,GAAG,YAAY,EAAE;CA4F5D;AAED,yCAAyC;AACzC,eAAO,MAAM,gBAAgB,kBAAyB,CAAC"}
|