@tdesign-react/chat 1.0.2-alpha.8 → 1.1.0-alpha.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/es/_chunks/dep-f2051ebd.js +839 -0
- package/es/_chunks/dep-f2051ebd.js.map +1 -0
- package/es/_util/reactify.d.ts +1 -2
- package/es/_util/reactify.js +81 -231
- package/es/_util/reactify.js.map +1 -1
- package/es/_util/useDynamicStyle.js +1 -1
- package/es/attachments/index.js +4 -6
- package/es/attachments/index.js.map +1 -1
- package/es/chat-actionbar/_example-js/base.d.ts +2 -0
- package/es/chat-actionbar/_example-js/custom.d.ts +2 -0
- package/es/chat-actionbar/_example-js/style.d.ts +2 -0
- package/es/chat-actionbar/index.js +4 -6
- package/es/chat-actionbar/index.js.map +1 -1
- package/es/chat-attachments/_example-js/base.d.ts +2 -0
- package/es/chat-attachments/_example-js/scroll-x.d.ts +2 -0
- package/es/chat-attachments/_example-js/scroll-y.d.ts +2 -0
- package/es/chat-attachments/index.js +3 -1
- package/es/chat-attachments/index.js.map +1 -1
- package/es/chat-engine/_example-js/agui-basic.d.ts +10 -0
- package/es/chat-engine/_example-js/agui-comprehensive.d.ts +2 -0
- package/es/chat-engine/_example-js/agui-test.d.ts +11 -0
- package/es/chat-engine/_example-js/agui-toolcall.d.ts +5 -0
- package/es/chat-engine/_example-js/agui-videoclip.d.ts +8 -0
- package/es/chat-engine/_example-js/agui.d.ts +1 -0
- package/es/chat-engine/_example-js/basic.d.ts +9 -0
- package/es/chat-engine/_example-js/components/HotelCard.d.ts +3 -0
- package/es/chat-engine/_example-js/components/HumanInputForm.d.ts +6 -0
- package/es/chat-engine/_example-js/components/HumanInputResult.d.ts +3 -0
- package/es/chat-engine/_example-js/components/ItineraryCard.d.ts +3 -0
- package/es/chat-engine/_example-js/components/PlanningStatePanel.d.ts +4 -0
- package/es/chat-engine/_example-js/components/Toolcall.d.ts +4 -0
- package/es/chat-engine/_example-js/components/WeatherCard.d.ts +3 -0
- package/es/chat-engine/_example-js/components/login.d.ts +1 -0
- package/es/chat-engine/_example-js/comprehensive.d.ts +12 -0
- package/es/chat-engine/_example-js/custom-content.d.ts +1 -0
- package/es/chat-engine/_example-js/hookComponent.d.ts +1 -0
- package/es/chat-engine/_example-js/initial-messages.d.ts +9 -0
- package/es/chat-engine/_example-js/instance-methods.d.ts +13 -0
- package/es/chat-engine/_example-js/travel-actions.d.ts +91 -0
- package/es/chat-engine/_example-js/travelToolcall.d.ts +1 -0
- package/es/chat-engine/components/a2ui/A2UIActivityRenderer.d.ts +196 -0
- package/es/chat-engine/components/a2ui/A2UIActivityRenderer.js +301 -0
- package/es/chat-engine/components/a2ui/A2UIActivityRenderer.js.map +1 -0
- package/es/chat-engine/components/a2ui/A2UIComponentRenderer.d.ts +37 -0
- package/es/chat-engine/components/a2ui/A2UIComponentRenderer.js +116 -0
- package/es/chat-engine/components/a2ui/A2UIComponentRenderer.js.map +1 -0
- package/es/chat-engine/components/a2ui/A2UIErrorBoundary.d.ts +42 -0
- package/es/chat-engine/components/a2ui/A2UIErrorBoundary.js +113 -0
- package/es/chat-engine/components/a2ui/A2UIErrorBoundary.js.map +1 -0
- package/es/chat-engine/components/a2ui/A2UISkeleton.d.ts +60 -0
- package/es/chat-engine/components/a2ui/A2UISkeleton.js +197 -0
- package/es/chat-engine/components/a2ui/A2UISkeleton.js.map +1 -0
- package/es/chat-engine/components/a2ui/A2UISurfaceRenderer.d.ts +44 -0
- package/es/chat-engine/components/a2ui/A2UISurfaceRenderer.js +139 -0
- package/es/chat-engine/components/a2ui/A2UISurfaceRenderer.js.map +1 -0
- package/es/chat-engine/components/a2ui/containers/A2UICard.d.ts +22 -0
- package/es/chat-engine/components/a2ui/containers/A2UICard.js +82 -0
- package/es/chat-engine/components/a2ui/containers/A2UICard.js.map +1 -0
- package/es/chat-engine/components/a2ui/containers/A2UIColumn.d.ts +18 -0
- package/es/chat-engine/components/a2ui/containers/A2UIColumn.js +81 -0
- package/es/chat-engine/components/a2ui/containers/A2UIColumn.js.map +1 -0
- package/es/chat-engine/components/a2ui/containers/A2UIList.d.ts +14 -0
- package/es/chat-engine/components/a2ui/containers/A2UIList.js +62 -0
- package/es/chat-engine/components/a2ui/containers/A2UIList.js.map +1 -0
- package/es/chat-engine/components/a2ui/containers/A2UIRow.d.ts +20 -0
- package/es/chat-engine/components/a2ui/containers/A2UIRow.js +84 -0
- package/es/chat-engine/components/a2ui/containers/A2UIRow.js.map +1 -0
- package/es/chat-engine/components/a2ui/containers/A2UITabs.d.ts +14 -0
- package/es/chat-engine/components/a2ui/containers/A2UITabs.js +69 -0
- package/es/chat-engine/components/a2ui/containers/A2UITabs.js.map +1 -0
- package/es/chat-engine/components/a2ui/containers/index.d.ts +8 -0
- package/es/chat-engine/components/a2ui/containers/index.js +30 -0
- package/es/chat-engine/components/a2ui/containers/index.js.map +1 -0
- package/es/chat-engine/components/a2ui/index.d.ts +11 -0
- package/es/chat-engine/components/a2ui/index.js +62 -0
- package/es/chat-engine/components/a2ui/index.js.map +1 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIButton.d.ts +33 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIButton.js +80 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIButton.js.map +1 -0
- package/es/chat-engine/components/a2ui/primitives/A2UICheckBox.d.ts +12 -0
- package/es/chat-engine/components/a2ui/primitives/A2UICheckBox.js +43 -0
- package/es/chat-engine/components/a2ui/primitives/A2UICheckBox.js.map +1 -0
- package/es/chat-engine/components/a2ui/primitives/A2UICheckboxGroup.d.ts +50 -0
- package/es/chat-engine/components/a2ui/primitives/A2UICheckboxGroup.js +54 -0
- package/es/chat-engine/components/a2ui/primitives/A2UICheckboxGroup.js.map +1 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIChoicePicker.d.ts +13 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIChoicePicker.js +89 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIChoicePicker.js.map +1 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIDivider.d.ts +12 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIDivider.js +25 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIDivider.js.map +1 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIIcon.d.ts +13 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIIcon.js +138942 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIIcon.js.map +1 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIImage.d.ts +12 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIImage.js +75 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIImage.js.map +1 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIInput.d.ts +20 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIInput.js +63 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIInput.js.map +1 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIRadioGroup.d.ts +56 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIRadioGroup.js +64 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIRadioGroup.js.map +1 -0
- package/es/chat-engine/components/a2ui/primitives/A2UISlider.d.ts +12 -0
- package/es/chat-engine/components/a2ui/primitives/A2UISlider.js +55 -0
- package/es/chat-engine/components/a2ui/primitives/A2UISlider.js.map +1 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIText.d.ts +12 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIText.js +104 -0
- package/es/chat-engine/components/a2ui/primitives/A2UIText.js.map +1 -0
- package/es/chat-engine/components/a2ui/primitives/A2UITextField.d.ts +12 -0
- package/es/chat-engine/components/a2ui/primitives/A2UITextField.js +80 -0
- package/es/chat-engine/components/a2ui/primitives/A2UITextField.js.map +1 -0
- package/es/chat-engine/components/a2ui/primitives/index.d.ts +15 -0
- package/es/chat-engine/components/a2ui/primitives/index.js +39 -0
- package/es/chat-engine/components/a2ui/primitives/index.js.map +1 -0
- package/es/chat-engine/components/a2ui/registry.d.ts +35 -0
- package/es/chat-engine/components/a2ui/registry.js +74 -0
- package/es/chat-engine/components/a2ui/registry.js.map +1 -0
- package/es/{chatbot/components/toolcall → chat-engine/components/activity}/index.d.ts +1 -0
- package/es/chat-engine/components/activity/index.js +18 -0
- package/es/chat-engine/components/activity/index.js.map +1 -0
- package/es/chat-engine/components/activity/registry.d.ts +44 -0
- package/es/{chatbot/components/toolcall → chat-engine/components/activity}/registry.js +32 -22
- package/es/chat-engine/components/activity/registry.js.map +1 -0
- package/es/chat-engine/components/activity/render.d.ts +11 -0
- package/es/chat-engine/components/activity/render.js +107 -0
- package/es/chat-engine/components/activity/render.js.map +1 -0
- package/es/chat-engine/components/activity/types.d.ts +32 -0
- package/es/chat-engine/components/activity/types.js +7 -0
- package/es/chat-engine/components/activity/types.js.map +1 -0
- package/es/chat-engine/components/index.d.ts +4 -0
- package/es/chat-engine/components/index.js +76 -0
- package/es/chat-engine/components/index.js.map +1 -0
- package/es/chat-engine/components/json-render/A2UIJsonRenderActivityRenderer.d.ts +36 -0
- package/es/chat-engine/components/json-render/A2UIJsonRenderActivityRenderer.js +36 -0
- package/es/chat-engine/components/json-render/A2UIJsonRenderActivityRenderer.js.map +1 -0
- package/es/chat-engine/components/json-render/JsonRenderActivityRenderer.d.ts +46 -0
- package/es/chat-engine/components/json-render/JsonRenderActivityRenderer.js +36 -0
- package/es/chat-engine/components/json-render/JsonRenderActivityRenderer.js.map +1 -0
- package/es/chat-engine/components/json-render/SurfaceStateManager.d.ts +113 -0
- package/es/chat-engine/components/json-render/SurfaceStateManager.js +195 -0
- package/es/chat-engine/components/json-render/SurfaceStateManager.js.map +1 -0
- package/es/chat-engine/components/json-render/adapters/a2ui-to-jsonrender.d.ts +49 -0
- package/es/chat-engine/components/json-render/adapters/a2ui-to-jsonrender.js +307 -0
- package/es/chat-engine/components/json-render/adapters/a2ui-to-jsonrender.js.map +1 -0
- package/es/chat-engine/components/json-render/adapters/a2ui-types.d.ts +96 -0
- package/es/chat-engine/components/json-render/adapters/a2ui-types.js +7 -0
- package/es/chat-engine/components/json-render/adapters/a2ui-types.js.map +1 -0
- package/es/chat-engine/components/json-render/adapters/index.d.ts +7 -0
- package/es/chat-engine/components/json-render/adapters/index.js +11 -0
- package/es/chat-engine/components/json-render/adapters/index.js.map +1 -0
- package/es/chat-engine/components/json-render/catalog/a2ui-binding.d.ts +64 -0
- package/es/chat-engine/components/json-render/catalog/a2ui-binding.js +36 -0
- package/es/chat-engine/components/json-render/catalog/a2ui-binding.js.map +1 -0
- package/es/chat-engine/components/json-render/catalog/a2ui-registry.d.ts +78 -0
- package/es/chat-engine/components/json-render/catalog/a2ui-registry.js +36 -0
- package/es/chat-engine/components/json-render/catalog/a2ui-registry.js.map +1 -0
- package/es/chat-engine/components/json-render/catalog/button.d.ts +14 -0
- package/es/chat-engine/components/json-render/catalog/button.js +71 -0
- package/es/chat-engine/components/json-render/catalog/button.js.map +1 -0
- package/es/chat-engine/components/json-render/catalog/card.d.ts +11 -0
- package/es/chat-engine/components/json-render/catalog/card.js +57 -0
- package/es/chat-engine/components/json-render/catalog/card.js.map +1 -0
- package/es/chat-engine/components/json-render/catalog/index.d.ts +127 -0
- package/es/chat-engine/components/json-render/catalog/index.js +36 -0
- package/es/chat-engine/components/json-render/catalog/index.js.map +1 -0
- package/es/chat-engine/components/json-render/catalog/input.d.ts +20 -0
- package/es/chat-engine/components/json-render/catalog/input.js +36 -0
- package/es/chat-engine/components/json-render/catalog/input.js.map +1 -0
- package/es/chat-engine/components/json-render/catalog/layout.d.ts +44 -0
- package/es/chat-engine/components/json-render/catalog/layout.js +129 -0
- package/es/chat-engine/components/json-render/catalog/layout.js.map +1 -0
- package/es/chat-engine/components/json-render/catalog/text.d.ts +11 -0
- package/es/chat-engine/components/json-render/catalog/text.js +31 -0
- package/es/chat-engine/components/json-render/catalog/text.js.map +1 -0
- package/es/chat-engine/components/json-render/catalog.d.ts +549 -0
- package/es/chat-engine/components/json-render/catalog.js +147 -0
- package/es/chat-engine/components/json-render/catalog.js.map +1 -0
- package/es/chat-engine/components/json-render/config.d.ts +154 -0
- package/es/chat-engine/components/json-render/config.js +36 -0
- package/es/chat-engine/components/json-render/config.js.map +1 -0
- package/es/chat-engine/components/json-render/contexts/actions.d.ts +74 -0
- package/es/chat-engine/components/json-render/contexts/actions.js +290 -0
- package/es/chat-engine/components/json-render/contexts/actions.js.map +1 -0
- package/es/chat-engine/components/json-render/contexts/data.d.ts +45 -0
- package/es/chat-engine/components/json-render/contexts/data.js +104 -0
- package/es/chat-engine/components/json-render/contexts/data.js.map +1 -0
- package/es/chat-engine/components/json-render/contexts/validation.d.ts +59 -0
- package/es/chat-engine/components/json-render/contexts/validation.js +151 -0
- package/es/chat-engine/components/json-render/contexts/validation.js.map +1 -0
- package/es/chat-engine/components/json-render/contexts/visibility.d.ts +29 -0
- package/es/chat-engine/components/json-render/contexts/visibility.js +56 -0
- package/es/chat-engine/components/json-render/contexts/visibility.js.map +1 -0
- package/es/chat-engine/components/json-render/engine.d.ts +58 -0
- package/es/chat-engine/components/json-render/engine.js +88 -0
- package/es/chat-engine/components/json-render/engine.js.map +1 -0
- package/es/chat-engine/components/json-render/index.d.ts +34 -0
- package/es/chat-engine/components/json-render/index.js +36 -0
- package/es/chat-engine/components/json-render/index.js.map +1 -0
- package/es/chat-engine/components/json-render/performance.d.ts +91 -0
- package/es/chat-engine/components/json-render/performance.js +135 -0
- package/es/chat-engine/components/json-render/performance.js.map +1 -0
- package/es/chat-engine/components/json-render/renderer.d.ts +71 -0
- package/es/chat-engine/components/json-render/renderer.js +124 -0
- package/es/chat-engine/components/json-render/renderer.js.map +1 -0
- package/es/chat-engine/components/json-render/types.d.ts +69 -0
- package/es/chat-engine/components/json-render/types.js +7 -0
- package/es/chat-engine/components/json-render/types.js.map +1 -0
- package/es/chat-engine/components/provider/agent-state.js +39 -2
- package/es/chat-engine/components/provider/agent-state.js.map +1 -1
- package/es/chat-engine/components/toolcall/index.js +35 -2
- package/es/chat-engine/components/toolcall/index.js.map +1 -1
- package/es/chat-engine/components/toolcall/registry.js +1 -1
- package/es/chat-engine/components/toolcall/render.d.ts +1 -1
- package/es/chat-engine/components/toolcall/render.js +102 -26
- package/es/chat-engine/components/toolcall/render.js.map +1 -1
- package/es/chat-engine/components/toolcall/types.js +1 -1
- package/es/chat-engine/core/a2ui/index.d.ts +10 -0
- package/es/chat-engine/core/a2ui/index.js +24 -0
- package/es/chat-engine/core/a2ui/index.js.map +1 -0
- package/es/chat-engine/core/a2ui/processor/A2uiMessageProcessor.d.ts +197 -0
- package/es/chat-engine/core/a2ui/processor/A2uiMessageProcessor.js +438 -0
- package/es/chat-engine/core/a2ui/processor/A2uiMessageProcessor.js.map +1 -0
- package/es/chat-engine/core/a2ui/processor/ComponentTree.d.ts +53 -0
- package/es/chat-engine/core/a2ui/processor/ComponentTree.js +158 -0
- package/es/chat-engine/core/a2ui/processor/ComponentTree.js.map +1 -0
- package/es/chat-engine/core/a2ui/processor/DataStore.d.ts +63 -0
- package/es/chat-engine/core/a2ui/processor/DataStore.js +172 -0
- package/es/chat-engine/core/a2ui/processor/DataStore.js.map +1 -0
- package/es/chat-engine/core/a2ui/processor/PathResolver.d.ts +47 -0
- package/es/chat-engine/core/a2ui/processor/PathResolver.js +99 -0
- package/es/chat-engine/core/a2ui/processor/PathResolver.js.map +1 -0
- package/es/chat-engine/core/a2ui/types/index.d.ts +4 -0
- package/es/chat-engine/core/a2ui/types/index.js +9 -0
- package/es/chat-engine/core/a2ui/types/index.js.map +1 -0
- package/es/chat-engine/core/a2ui/types/types.d.ts +770 -0
- package/es/chat-engine/core/a2ui/types/types.js +104 -0
- package/es/chat-engine/core/a2ui/types/types.js.map +1 -0
- package/es/chat-engine/core/a2ui/utils/binding.d.ts +34 -0
- package/es/chat-engine/core/a2ui/utils/binding.js +1784 -0
- package/es/chat-engine/core/a2ui/utils/binding.js.map +1 -0
- package/es/chat-engine/core/a2ui/utils/index.d.ts +5 -0
- package/es/chat-engine/core/a2ui/utils/index.js +13 -0
- package/es/chat-engine/core/a2ui/utils/index.js.map +1 -0
- package/es/chat-engine/core/a2ui/utils/validation.d.ts +70 -0
- package/es/chat-engine/core/a2ui/utils/validation.js +333 -0
- package/es/chat-engine/core/a2ui/utils/validation.js.map +1 -0
- package/es/chat-engine/core/adapters/agui/activity-manager.d.ts +102 -0
- package/es/chat-engine/core/adapters/agui/activity-manager.js +144 -0
- package/es/chat-engine/core/adapters/agui/activity-manager.js.map +1 -0
- package/es/chat-engine/core/adapters/agui/event-mapper.d.ts +149 -0
- package/es/chat-engine/core/adapters/agui/event-mapper.js +415 -0
- package/es/chat-engine/core/adapters/agui/event-mapper.js.map +1 -0
- package/es/chat-engine/core/adapters/agui/events.d.ts +1550 -0
- package/es/chat-engine/core/adapters/agui/events.js +199 -0
- package/es/chat-engine/core/adapters/agui/events.js.map +1 -0
- package/es/chat-engine/core/adapters/agui/index.d.ts +95 -0
- package/es/chat-engine/core/adapters/agui/index.js +195 -0
- package/es/chat-engine/core/adapters/agui/index.js.map +1 -0
- package/es/chat-engine/core/adapters/agui/state-manager.d.ts +99 -0
- package/es/chat-engine/core/adapters/agui/state-manager.js +168 -0
- package/es/chat-engine/core/adapters/agui/state-manager.js.map +1 -0
- package/es/chat-engine/core/adapters/agui/types.d.ts +818 -0
- package/es/chat-engine/core/adapters/agui/types.js +95 -0
- package/es/chat-engine/core/adapters/agui/types.js.map +1 -0
- package/es/chat-engine/core/adapters/agui/utils.d.ts +203 -0
- package/es/chat-engine/core/adapters/agui/utils.js +330 -0
- package/es/chat-engine/core/adapters/agui/utils.js.map +1 -0
- package/es/chat-engine/core/event-bus/ChatEventBus.d.ts +88 -0
- package/es/chat-engine/core/event-bus/ChatEventBus.js +295 -0
- package/es/chat-engine/core/event-bus/ChatEventBus.js.map +1 -0
- package/es/chat-engine/core/event-bus/index.d.ts +5 -0
- package/es/chat-engine/core/event-bus/index.js +13 -0
- package/es/chat-engine/core/event-bus/index.js.map +1 -0
- package/es/chat-engine/core/event-bus/types.d.ts +230 -0
- package/es/chat-engine/core/event-bus/types.js +32 -0
- package/es/chat-engine/core/event-bus/types.js.map +1 -0
- package/es/chat-engine/core/index.d.ts +147 -0
- package/es/chat-engine/core/index.js +754 -0
- package/es/chat-engine/core/index.js.map +1 -0
- package/es/chat-engine/core/processor/index.d.ts +20 -0
- package/es/chat-engine/core/processor/index.js +146 -0
- package/es/chat-engine/core/processor/index.js.map +1 -0
- package/es/chat-engine/core/server/batch-client.d.ts +20 -0
- package/es/chat-engine/core/server/batch-client.js +114 -0
- package/es/chat-engine/core/server/batch-client.js.map +1 -0
- package/es/chat-engine/core/server/connection-manager.d.ts +39 -0
- package/es/chat-engine/core/server/connection-manager.js +84 -0
- package/es/chat-engine/core/server/connection-manager.js.map +1 -0
- package/es/chat-engine/core/server/errors.d.ts +22 -0
- package/es/chat-engine/core/server/errors.js +80 -0
- package/es/chat-engine/core/server/errors.js.map +1 -0
- package/es/chat-engine/core/server/index.d.ts +11 -0
- package/es/chat-engine/core/server/index.js +26 -0
- package/es/chat-engine/core/server/index.js.map +1 -0
- package/es/chat-engine/core/server/llm-service.d.ts +44 -0
- package/es/chat-engine/core/server/llm-service.js +200 -0
- package/es/chat-engine/core/server/llm-service.js.map +1 -0
- package/es/chat-engine/core/server/sse-client.d.ts +77 -0
- package/es/chat-engine/core/server/sse-client.js +362 -0
- package/es/chat-engine/core/server/sse-client.js.map +1 -0
- package/es/chat-engine/core/server/sse-parser.d.ts +49 -0
- package/es/chat-engine/core/server/sse-parser.js +116 -0
- package/es/chat-engine/core/server/sse-parser.js.map +1 -0
- package/es/chat-engine/core/server/types.d.ts +54 -0
- package/es/chat-engine/core/server/types.js +28 -0
- package/es/chat-engine/core/server/types.js.map +1 -0
- package/es/chat-engine/core/store/message.d.ts +27 -0
- package/es/chat-engine/core/store/message.js +263 -0
- package/es/chat-engine/core/store/message.js.map +1 -0
- package/es/chat-engine/core/store/model.d.ts +8 -0
- package/es/chat-engine/core/store/model.js +65 -0
- package/es/chat-engine/core/store/model.js.map +1 -0
- package/es/chat-engine/core/store/reactiveState.d.ts +52 -0
- package/es/chat-engine/core/store/reactiveState.js +1359 -0
- package/es/chat-engine/core/store/reactiveState.js.map +1 -0
- package/es/chat-engine/core/type.d.ts +271 -0
- package/es/chat-engine/core/type.js +7 -0
- package/es/chat-engine/core/type.js.map +1 -0
- package/es/chat-engine/core/utils/eventEmitter.d.ts +10 -0
- package/es/chat-engine/core/utils/eventEmitter.js +67 -0
- package/es/chat-engine/core/utils/eventEmitter.js.map +1 -0
- package/es/chat-engine/core/utils/index.d.ts +33 -0
- package/es/chat-engine/core/utils/index.js +999 -0
- package/es/chat-engine/core/utils/index.js.map +1 -0
- package/es/chat-engine/core/utils/logger.d.ts +30 -0
- package/es/chat-engine/core/utils/logger.js +87 -0
- package/es/chat-engine/core/utils/logger.js.map +1 -0
- package/es/chat-engine/hooks/a2ui/A2UIContext.d.ts +90 -0
- package/es/chat-engine/hooks/a2ui/A2UIContext.js +97 -0
- package/es/chat-engine/hooks/a2ui/A2UIContext.js.map +1 -0
- package/es/chat-engine/hooks/a2ui/index.d.ts +12 -0
- package/es/chat-engine/hooks/a2ui/index.js +19 -0
- package/es/chat-engine/hooks/a2ui/useA2UIAction.d.ts +40 -0
- package/es/chat-engine/hooks/a2ui/useA2UIAction.js +74 -0
- package/es/chat-engine/hooks/a2ui/useA2UIAction.js.map +1 -0
- package/es/chat-engine/hooks/a2ui/useA2UISurface.d.ts +36 -0
- package/es/chat-engine/hooks/a2ui/useA2UISurface.js +39 -0
- package/es/chat-engine/hooks/a2ui/useA2UISurface.js.map +1 -0
- package/es/chat-engine/hooks/a2ui/useDataBinding.d.ts +53 -0
- package/es/chat-engine/hooks/a2ui/useDataBinding.js +111 -0
- package/es/chat-engine/hooks/a2ui/useDataBinding.js.map +1 -0
- package/es/chat-engine/hooks/index.d.ts +4 -0
- package/es/chat-engine/hooks/index.js +54 -0
- package/es/chat-engine/hooks/index.js.map +1 -0
- package/es/chat-engine/hooks/useAgentActivity.d.ts +15 -0
- package/es/chat-engine/hooks/useAgentActivity.js +73 -0
- package/es/chat-engine/hooks/useAgentActivity.js.map +1 -0
- package/es/chat-engine/hooks/useAgentState.js +39 -2
- package/es/chat-engine/hooks/useAgentState.js.map +1 -1
- package/es/chat-engine/hooks/useAgentToolcall.js +1 -1
- package/es/chat-engine/hooks/useChat.d.ts +3 -3
- package/es/chat-engine/hooks/useChat.js +41 -3
- package/es/chat-engine/hooks/useChat.js.map +1 -1
- package/es/chat-engine/hooks/useJsonRenderActivity.d.ts +56 -0
- package/es/chat-engine/hooks/useJsonRenderActivity.js +63 -0
- package/es/chat-engine/hooks/useJsonRenderActivity.js.map +1 -0
- package/es/chat-engine/index.d.ts +3 -3
- package/es/chat-engine/index.js +61 -5
- package/es/chat-engine/index.js.map +1 -1
- package/es/chat-filecard/_example-js/base.d.ts +1 -0
- package/es/chat-filecard/index.js +4 -6
- package/es/chat-filecard/index.js.map +1 -1
- package/es/chat-loading/_example-js/base.d.ts +2 -0
- package/es/chat-loading/_example-js/text.d.ts +2 -0
- package/es/chat-loading/index.js +4 -6
- package/es/chat-loading/index.js.map +1 -1
- package/es/chat-markdown/_example-js/base.d.ts +1 -0
- package/es/chat-markdown/_example-js/custom.d.ts +2 -0
- package/es/chat-markdown/_example-js/event.d.ts +1 -0
- package/es/chat-markdown/_example-js/footnote.d.ts +2 -0
- package/es/chat-markdown/_example-js/plugin.d.ts +2 -0
- package/es/chat-markdown/_example-js/theme.d.ts +2 -0
- package/es/chat-markdown/index.js +4 -6
- package/es/chat-markdown/index.js.map +1 -1
- package/es/chat-message/_example-js/action.d.ts +1 -0
- package/es/chat-message/_example-js/base.d.ts +1 -0
- package/es/chat-message/_example-js/configure.d.ts +1 -0
- package/es/chat-message/_example-js/content.d.ts +1 -0
- package/es/chat-message/_example-js/custom.d.ts +1 -0
- package/es/chat-message/_example-js/handle-actions.d.ts +7 -0
- package/es/chat-message/_example-js/status.d.ts +1 -0
- package/es/chat-message/_example-js/think.d.ts +1 -0
- package/es/chat-message/index.js +4 -6
- package/es/chat-message/index.js.map +1 -1
- package/es/chat-sender/_example-js/attachment.d.ts +2 -0
- package/es/chat-sender/_example-js/base.d.ts +2 -0
- package/es/chat-sender/_example-js/custom.d.ts +2 -0
- package/es/chat-sender/index.js +4 -6
- package/es/chat-sender/index.js.map +1 -1
- package/es/chat-thinking/_example-js/base.d.ts +1 -0
- package/es/chat-thinking/_example-js/style.d.ts +1 -0
- package/es/chat-thinking/index.js +4 -6
- package/es/chat-thinking/index.js.map +1 -1
- package/es/chatbot/_example-js/agent.d.ts +1 -0
- package/es/chatbot/_example-js/agui.d.ts +13 -0
- package/es/chatbot/_example-js/backup/travel.d.ts +1 -0
- package/es/chatbot/_example-js/basic.d.ts +1 -0
- package/es/chatbot/_example-js/code.d.ts +1 -0
- package/es/chatbot/_example-js/components/ItineraryCard.d.ts +3 -0
- package/es/chatbot/_example-js/components/login.d.ts +1 -0
- package/es/chatbot/_example-js/comprehensive.d.ts +1 -0
- package/es/chatbot/_example-js/custom-content.d.ts +1 -0
- package/es/chatbot/_example-js/custom-merge.d.ts +1 -0
- package/es/chatbot/_example-js/custom.d.ts +1 -0
- package/es/chatbot/_example-js/docs.d.ts +1 -0
- package/es/chatbot/_example-js/image.d.ts +1 -0
- package/es/chatbot/_example-js/initial-messages.d.ts +9 -0
- package/es/chatbot/_example-js/instance-methods.d.ts +14 -0
- package/es/chatbot/_example-js/nostream.d.ts +1 -0
- package/es/chatbot/_example-js/quick-start.d.ts +9 -0
- package/es/chatbot/_example-js/research.d.ts +1 -0
- package/es/chatbot/_example-js/role-message-config.d.ts +22 -0
- package/es/chatbot/_example-js/sender-config.d.ts +20 -0
- package/es/chatbot/_example-js/service-config.d.ts +17 -0
- package/es/chatbot/_example-js/simple.d.ts +1 -0
- package/es/chatbot/_example-js/utils/messageRenderer.d.ts +5 -0
- package/es/chatbot/docs/react-best-practice.d.ts +13 -0
- package/es/chatbot/index.js +4 -6
- package/es/chatbot/index.js.map +1 -1
- package/es/index.js +59 -9
- package/es/index.js.map +1 -1
- package/es/style/index.js +1 -1
- package/package.json +6 -3
- package/es/chatbot/components/provider/agent-state.d.ts +0 -5
- package/es/chatbot/components/provider/agent-state.js +0 -28
- package/es/chatbot/components/provider/agent-state.js.map +0 -1
- package/es/chatbot/components/toolcall/index.js +0 -19
- package/es/chatbot/components/toolcall/registry.d.ts +0 -35
- package/es/chatbot/components/toolcall/registry.js.map +0 -1
- package/es/chatbot/components/toolcall/render.d.ts +0 -13
- package/es/chatbot/components/toolcall/render.js +0 -207
- package/es/chatbot/components/toolcall/render.js.map +0 -1
- package/es/chatbot/components/toolcall/types.d.ts +0 -57
- package/es/chatbot/components/toolcall/types.js +0 -15
- package/es/chatbot/components/toolcall/types.js.map +0 -1
- package/es/chatbot/hooks/useAgentState.d.ts +0 -40
- package/es/chatbot/hooks/useAgentState.js +0 -76
- package/es/chatbot/hooks/useAgentState.js.map +0 -1
- package/es/chatbot/hooks/useAgentToolcall.d.ts +0 -28
- package/es/chatbot/hooks/useAgentToolcall.js +0 -78
- package/es/chatbot/hooks/useAgentToolcall.js.map +0 -1
- package/es/chatbot/hooks/useChat.d.ts +0 -11
- package/es/chatbot/hooks/useChat.js +0 -66
- package/es/chatbot/hooks/useChat.js.map +0 -1
- /package/es/{chatbot/components/toolcall → chat-engine/hooks/a2ui}/index.js.map +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"engine.js","sources":["../../../../../pro-components/chat/chat-engine/components/json-render/engine.ts"],"sourcesContent":["/**\n * json-render 引擎封装\n * 提供高性能的增量渲染能力\n */\n\nimport type { UIElement } from '@json-render/core';\nimport type { ComponentRegistry } from './renderer';\nimport type { JsonRenderSchema, DeltaInfo } from './types';\n\n/**\n * json-render 引擎管理器\n * 负责 Schema 缓存、增量更新和性能优化\n */\nexport class JsonRenderEngine {\n private currentSchema: JsonRenderSchema | null = null;\n private registry: ComponentRegistry;\n\n constructor(registry: ComponentRegistry) {\n this.registry = registry;\n }\n\n /**\n * 全量渲染\n * 用于 ACTIVITY_SNAPSHOT 事件\n */\n setSchema(schema: JsonRenderSchema): void {\n this.currentSchema = schema;\n }\n\n /**\n * 获取当前 Schema\n */\n getSchema(): JsonRenderSchema | null {\n return this.currentSchema;\n }\n\n /**\n * 增量更新\n * 用于 ACTIVITY_DELTA 事件\n * \n * @param newSchema 应用 JSON Patch 后的完整 Schema\n * @param deltaInfo 增量信息(可选,用于进一步优化)\n */\n patchSchema(newSchema: JsonRenderSchema, deltaInfo?: DeltaInfo): void {\n if (!this.currentSchema) {\n // 如果没有初始 Schema,直接设置\n this.currentSchema = newSchema;\n return;\n }\n\n // 更新 Schema(json-render 的 Renderer 会自动处理 diff)\n this.currentSchema = newSchema;\n\n // 如果有 deltaInfo,可以在这里做进一步优化\n if (deltaInfo) {\n console.debug('[json-render] 增量更新范围:', deltaInfo);\n // 未来可以基于 deltaInfo 实现更细粒度的优化\n }\n }\n\n /**\n * 重置引擎状态\n */\n reset(): void {\n this.currentSchema = null;\n }\n\n /**\n * 获取组件注册表\n */\n getRegistry(): ComponentRegistry {\n return this.registry;\n }\n\n /**\n * 更新组件注册表\n */\n updateRegistry(registry: ComponentRegistry): void {\n this.registry = { ...this.registry, ...registry };\n }\n\n /**\n * 验证 Schema 是否有效\n */\n validateSchema(schema: JsonRenderSchema): boolean {\n if (!schema || !schema.root || !schema.elements) {\n console.error('[json-render] Schema 验证失败:缺少 root 或 elements');\n return false;\n }\n\n const rootElement = schema.elements[schema.root];\n if (!rootElement) {\n console.error('[json-render] Schema 验证失败:root 元素不存在');\n return false;\n }\n\n return true;\n }\n\n /**\n * 提取增量元素(基于 deltaInfo)\n * 用于性能优化场景\n */\n extractDeltaElements(schema: JsonRenderSchema, deltaInfo: DeltaInfo): Record<string, UIElement> {\n const elementKeys = Object.keys(schema.elements);\n const deltaKeys = elementKeys.slice(deltaInfo.fromIndex, deltaInfo.toIndex);\n \n const deltaElements: Record<string, UIElement> = {};\n deltaKeys.forEach((key) => {\n deltaElements[key] = schema.elements[key];\n });\n \n return deltaElements;\n }\n}\n\n/**\n * 创建 json-render 引擎实例\n */\nexport function createJsonRenderEngine(registry: ComponentRegistry): JsonRenderEngine {\n return new JsonRenderEngine(registry);\n}\n"],"names":["JsonRenderEngine","registry","_classCallCheck","_defineProperty","_createClass","key","value","setSchema","schema","currentSchema","getSchema","patchSchema","newSchema","deltaInfo","console","debug","reset","getRegistry","updateRegistry","validateSchema","root","elements","error","rootElement","extractDeltaElements","elementKeys","Object","keys","deltaKeys","slice","fromIndex","toIndex","deltaElements","forEach","createJsonRenderEngine"],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* json-render 集成模块入口
|
|
3
|
+
* 导出所有核心 API 和类型
|
|
4
|
+
*/
|
|
5
|
+
export { JsonRenderActivityRenderer } from './JsonRenderActivityRenderer';
|
|
6
|
+
export type { JsonRenderActivityRendererProps } from './JsonRenderActivityRenderer';
|
|
7
|
+
export { A2UIJsonRenderActivityRenderer } from './A2UIJsonRenderActivityRenderer';
|
|
8
|
+
export type { A2UIJsonRenderActivityRendererProps } from './A2UIJsonRenderActivityRenderer';
|
|
9
|
+
export { JsonRenderEngine, createJsonRenderEngine } from './engine';
|
|
10
|
+
export { PerformanceMonitor, globalPerformanceMonitor, checkPerformance, PERFORMANCE_THRESHOLDS, } from './performance';
|
|
11
|
+
export type { PerformanceMetrics } from './performance';
|
|
12
|
+
export type { JsonRenderSchema, ComponentCatalog, JsonRenderContext, DeltaInfo, JsonRenderActivityProps, A2UIAdapterConfig, } from './types';
|
|
13
|
+
export { createCustomRegistry, tdesignRegistry, withStableProps } from './catalog/index';
|
|
14
|
+
export type { CreateCustomRegistryOptions } from './catalog/index';
|
|
15
|
+
export { tdesignCatalog, createCustomCatalog, tdesignComponentList, tdesignActionList, } from './catalog/index';
|
|
16
|
+
export type { Catalog } from '@json-render/core';
|
|
17
|
+
export { a2uiRegistry, createA2UIRegistry, A2UITextField, A2UIButton } from './catalog/index';
|
|
18
|
+
export { withA2UIBinding } from './catalog/index';
|
|
19
|
+
export type { A2UIBindingConfig } from './catalog/index';
|
|
20
|
+
export { JsonRenderButton } from './catalog/button';
|
|
21
|
+
export { JsonRenderInput } from './catalog/input';
|
|
22
|
+
export { JsonRenderCard } from './catalog/card';
|
|
23
|
+
export { JsonRenderRow, JsonRenderCol, JsonRenderSpace, JsonRenderDivider, } from './catalog/layout';
|
|
24
|
+
export { createJsonRenderActivityConfig, defaultJsonRenderActivityConfig, createA2UIJsonRenderActivityConfig, defaultA2UIJsonRenderActivityConfig, } from './config';
|
|
25
|
+
export type { JsonRenderActivityConfigOptions } from './config';
|
|
26
|
+
export * from './adapters';
|
|
27
|
+
export { surfaceStateManager, SurfaceStateManager } from './SurfaceStateManager';
|
|
28
|
+
export type { SurfaceCache, SurfaceSubscriber } from './SurfaceStateManager';
|
|
29
|
+
export { createJsonRenderActivityConfig as default } from './config';
|
|
30
|
+
export { DataProvider, useData, useDataValue, useDataBinding, type DataContextValue, type DataProviderProps, } from "./contexts/data";
|
|
31
|
+
export { VisibilityProvider, useVisibility, useIsVisible, type VisibilityContextValue, type VisibilityProviderProps, } from "./contexts/visibility";
|
|
32
|
+
export { ActionProvider, useActions, useAction, ConfirmDialog, type ActionContextValue, type ActionProviderProps, type PendingConfirmation, type ConfirmDialogProps, } from "./contexts/actions";
|
|
33
|
+
export { ValidationProvider, useValidation, useFieldValidation, type ValidationContextValue, type ValidationProviderProps, type FieldValidationState, } from "./contexts/validation";
|
|
34
|
+
export { Renderer, JSONUIProvider, createRendererFromCatalog, type ComponentRenderProps, type ComponentRenderer, type ComponentRegistry, type RendererProps, type JSONUIProviderProps, } from "./renderer";
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* tdesign v1.0.2-alpha.15
|
|
3
|
+
* (c) 2026 tdesign
|
|
4
|
+
* @license MIT
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
export { e as A2UIButton, A as A2UIJsonRenderActivityRenderer, d as A2UITextField, J as JsonRenderActivityRenderer, g as JsonRenderInput, a as a2uiRegistry, j as createA2UIJsonRenderActivityConfig, b as createA2UIRegistry, c as createCustomRegistry, h as createJsonRenderActivityConfig, h as default, k as defaultA2UIJsonRenderActivityConfig, i as defaultJsonRenderActivityConfig, t as tdesignRegistry, f as withA2UIBinding, w as withStableProps } from '../../../_chunks/dep-f2051ebd.js';
|
|
8
|
+
export { JsonRenderEngine, createJsonRenderEngine } from './engine.js';
|
|
9
|
+
export { PERFORMANCE_THRESHOLDS, PerformanceMonitor, checkPerformance, globalPerformanceMonitor } from './performance.js';
|
|
10
|
+
export { JsonRenderButton } from './catalog/button.js';
|
|
11
|
+
export { JsonRenderCard } from './catalog/card.js';
|
|
12
|
+
export { JsonRenderCol, JsonRenderDivider, JsonRenderRow, JsonRenderSpace } from './catalog/layout.js';
|
|
13
|
+
import './adapters/index.js';
|
|
14
|
+
export { SurfaceStateManager, surfaceStateManager } from './SurfaceStateManager.js';
|
|
15
|
+
export { DataProvider, useData, useDataBinding, useDataValue } from './contexts/data.js';
|
|
16
|
+
export { VisibilityProvider, useIsVisible, useVisibility } from './contexts/visibility.js';
|
|
17
|
+
export { ActionProvider, ConfirmDialog, useAction, useActions } from './contexts/actions.js';
|
|
18
|
+
export { ValidationProvider, useFieldValidation, useValidation } from './contexts/validation.js';
|
|
19
|
+
export { JSONUIProvider, Renderer, createRendererFromCatalog } from './renderer.js';
|
|
20
|
+
export { createCustomCatalog, tdesignActionList, tdesignCatalog, tdesignComponentList } from './catalog.js';
|
|
21
|
+
export { default as A2UIAdapter, applyA2UIDataUpdate, applyA2UIUpdates, convertA2UIMessagesToJsonRender } from './adapters/a2ui-to-jsonrender.js';
|
|
22
|
+
import 'react';
|
|
23
|
+
import '@babel/runtime/helpers/typeof';
|
|
24
|
+
import '@babel/runtime/helpers/slicedToArray';
|
|
25
|
+
import '@babel/runtime/helpers/defineProperty';
|
|
26
|
+
import '@babel/runtime/helpers/objectWithoutProperties';
|
|
27
|
+
import 'tdesign-react';
|
|
28
|
+
import '@json-render/core';
|
|
29
|
+
import './catalog/text.js';
|
|
30
|
+
import '@babel/runtime/helpers/classCallCheck';
|
|
31
|
+
import '@babel/runtime/helpers/createClass';
|
|
32
|
+
import '@babel/runtime/helpers/toConsumableArray';
|
|
33
|
+
import '@babel/runtime/helpers/asyncToGenerator';
|
|
34
|
+
import '@babel/runtime/regenerator';
|
|
35
|
+
import 'zod';
|
|
36
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* json-render 性能监控和优化工具
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* 性能指标
|
|
6
|
+
*/
|
|
7
|
+
export interface PerformanceMetrics {
|
|
8
|
+
/** 渲染类型 */
|
|
9
|
+
type: 'snapshot' | 'delta';
|
|
10
|
+
/** 渲染开始时间 */
|
|
11
|
+
startTime: number;
|
|
12
|
+
/** 渲染结束时间 */
|
|
13
|
+
endTime: number;
|
|
14
|
+
/** 渲染耗时(ms) */
|
|
15
|
+
duration: number;
|
|
16
|
+
/** Schema 元素数量 */
|
|
17
|
+
elementCount: number;
|
|
18
|
+
/** 增量信息(仅 delta 类型) */
|
|
19
|
+
deltaInfo?: {
|
|
20
|
+
fromIndex: number;
|
|
21
|
+
toIndex: number;
|
|
22
|
+
newElementsCount: number;
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* 性能监控器
|
|
27
|
+
*/
|
|
28
|
+
export declare class PerformanceMonitor {
|
|
29
|
+
private metrics;
|
|
30
|
+
private maxMetricsCount;
|
|
31
|
+
/**
|
|
32
|
+
* 开始性能测量
|
|
33
|
+
*/
|
|
34
|
+
start(): () => PerformanceMetrics;
|
|
35
|
+
/**
|
|
36
|
+
* 添加性能指标
|
|
37
|
+
*/
|
|
38
|
+
private addMetric;
|
|
39
|
+
/**
|
|
40
|
+
* 获取所有指标
|
|
41
|
+
*/
|
|
42
|
+
getMetrics(): PerformanceMetrics[];
|
|
43
|
+
/**
|
|
44
|
+
* 获取平均渲染时间
|
|
45
|
+
*/
|
|
46
|
+
getAverageDuration(type?: 'snapshot' | 'delta'): number;
|
|
47
|
+
/**
|
|
48
|
+
* 获取最近 N 次渲染的平均时间
|
|
49
|
+
*/
|
|
50
|
+
getRecentAverageDuration(count?: number): number;
|
|
51
|
+
/**
|
|
52
|
+
* 获取性能统计摘要
|
|
53
|
+
*/
|
|
54
|
+
getSummary(): {
|
|
55
|
+
totalRenders: number;
|
|
56
|
+
snapshotRenders: number;
|
|
57
|
+
deltaRenders: number;
|
|
58
|
+
avgSnapshotDuration: number;
|
|
59
|
+
avgDeltaDuration: number;
|
|
60
|
+
recentAvgDuration: number;
|
|
61
|
+
};
|
|
62
|
+
/**
|
|
63
|
+
* 重置所有指标
|
|
64
|
+
*/
|
|
65
|
+
reset(): void;
|
|
66
|
+
/**
|
|
67
|
+
* 打印性能摘要
|
|
68
|
+
*/
|
|
69
|
+
printSummary(): void;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* 全局性能监控实例
|
|
73
|
+
*/
|
|
74
|
+
export declare const globalPerformanceMonitor: PerformanceMonitor;
|
|
75
|
+
/**
|
|
76
|
+
* 性能警告阈值(ms)
|
|
77
|
+
*/
|
|
78
|
+
export declare const PERFORMANCE_THRESHOLDS: {
|
|
79
|
+
snapshot: number;
|
|
80
|
+
delta: number;
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* 检查性能并发出警告
|
|
84
|
+
*/
|
|
85
|
+
export declare function checkPerformance(metric: PerformanceMetrics): void;
|
|
86
|
+
declare const _default: {
|
|
87
|
+
PerformanceMonitor: typeof PerformanceMonitor;
|
|
88
|
+
globalPerformanceMonitor: PerformanceMonitor;
|
|
89
|
+
checkPerformance: typeof checkPerformance;
|
|
90
|
+
};
|
|
91
|
+
export default _default;
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* tdesign v1.0.2-alpha.15
|
|
3
|
+
* (c) 2026 tdesign
|
|
4
|
+
* @license MIT
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
|
8
|
+
import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
|
|
9
|
+
import _createClass from '@babel/runtime/helpers/createClass';
|
|
10
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
11
|
+
|
|
12
|
+
var PerformanceMonitor = /*#__PURE__*/function () {
|
|
13
|
+
function PerformanceMonitor() {
|
|
14
|
+
_classCallCheck(this, PerformanceMonitor);
|
|
15
|
+
_defineProperty(this, "metrics", []);
|
|
16
|
+
_defineProperty(this, "maxMetricsCount", 100);
|
|
17
|
+
}
|
|
18
|
+
return _createClass(PerformanceMonitor, [{
|
|
19
|
+
key: "start",
|
|
20
|
+
value: function start() {
|
|
21
|
+
var _this = this;
|
|
22
|
+
var startTime = performance.now();
|
|
23
|
+
return function (type, elementCount, deltaInfo) {
|
|
24
|
+
var endTime = performance.now();
|
|
25
|
+
var duration = endTime - startTime;
|
|
26
|
+
var metric = {
|
|
27
|
+
type: type,
|
|
28
|
+
startTime: startTime,
|
|
29
|
+
endTime: endTime,
|
|
30
|
+
duration: duration,
|
|
31
|
+
elementCount: elementCount,
|
|
32
|
+
deltaInfo: deltaInfo ? {
|
|
33
|
+
fromIndex: deltaInfo.fromIndex,
|
|
34
|
+
toIndex: deltaInfo.toIndex,
|
|
35
|
+
newElementsCount: deltaInfo.toIndex - deltaInfo.fromIndex
|
|
36
|
+
} : void 0
|
|
37
|
+
};
|
|
38
|
+
_this.addMetric(metric);
|
|
39
|
+
return metric;
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
}, {
|
|
43
|
+
key: "addMetric",
|
|
44
|
+
value: function addMetric(metric) {
|
|
45
|
+
this.metrics.push(metric);
|
|
46
|
+
if (this.metrics.length > this.maxMetricsCount) {
|
|
47
|
+
this.metrics.shift();
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}, {
|
|
51
|
+
key: "getMetrics",
|
|
52
|
+
value: function getMetrics() {
|
|
53
|
+
return _toConsumableArray(this.metrics);
|
|
54
|
+
}
|
|
55
|
+
}, {
|
|
56
|
+
key: "getAverageDuration",
|
|
57
|
+
value: function getAverageDuration(type) {
|
|
58
|
+
var filteredMetrics = type ? this.metrics.filter(function (m) {
|
|
59
|
+
return m.type === type;
|
|
60
|
+
}) : this.metrics;
|
|
61
|
+
if (filteredMetrics.length === 0) return 0;
|
|
62
|
+
var totalDuration = filteredMetrics.reduce(function (sum, m) {
|
|
63
|
+
return sum + m.duration;
|
|
64
|
+
}, 0);
|
|
65
|
+
return totalDuration / filteredMetrics.length;
|
|
66
|
+
}
|
|
67
|
+
}, {
|
|
68
|
+
key: "getRecentAverageDuration",
|
|
69
|
+
value: function getRecentAverageDuration() {
|
|
70
|
+
var count = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 10;
|
|
71
|
+
var recentMetrics = this.metrics.slice(-count);
|
|
72
|
+
if (recentMetrics.length === 0) return 0;
|
|
73
|
+
var totalDuration = recentMetrics.reduce(function (sum, m) {
|
|
74
|
+
return sum + m.duration;
|
|
75
|
+
}, 0);
|
|
76
|
+
return totalDuration / recentMetrics.length;
|
|
77
|
+
}
|
|
78
|
+
}, {
|
|
79
|
+
key: "getSummary",
|
|
80
|
+
value: function getSummary() {
|
|
81
|
+
return {
|
|
82
|
+
totalRenders: this.metrics.length,
|
|
83
|
+
snapshotRenders: this.metrics.filter(function (m) {
|
|
84
|
+
return m.type === "snapshot";
|
|
85
|
+
}).length,
|
|
86
|
+
deltaRenders: this.metrics.filter(function (m) {
|
|
87
|
+
return m.type === "delta";
|
|
88
|
+
}).length,
|
|
89
|
+
avgSnapshotDuration: this.getAverageDuration("snapshot"),
|
|
90
|
+
avgDeltaDuration: this.getAverageDuration("delta"),
|
|
91
|
+
recentAvgDuration: this.getRecentAverageDuration()
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
}, {
|
|
95
|
+
key: "reset",
|
|
96
|
+
value: function reset() {
|
|
97
|
+
this.metrics = [];
|
|
98
|
+
}
|
|
99
|
+
}, {
|
|
100
|
+
key: "printSummary",
|
|
101
|
+
value: function printSummary() {
|
|
102
|
+
var summary = this.getSummary();
|
|
103
|
+
console.log("[json-render Performance Summary]", {
|
|
104
|
+
"\u603B\u6E32\u67D3\u6B21\u6570": summary.totalRenders,
|
|
105
|
+
"\u5FEB\u7167\u6E32\u67D3": summary.snapshotRenders,
|
|
106
|
+
"\u589E\u91CF\u6E32\u67D3": summary.deltaRenders,
|
|
107
|
+
"\u5FEB\u7167\u5E73\u5747\u8017\u65F6(ms)": summary.avgSnapshotDuration.toFixed(2),
|
|
108
|
+
"\u589E\u91CF\u5E73\u5747\u8017\u65F6(ms)": summary.avgDeltaDuration.toFixed(2),
|
|
109
|
+
"\u6700\u8FD110\u6B21\u5E73\u5747\u8017\u65F6(ms)": summary.recentAvgDuration.toFixed(2)
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
}]);
|
|
113
|
+
}();
|
|
114
|
+
var globalPerformanceMonitor = new PerformanceMonitor();
|
|
115
|
+
var PERFORMANCE_THRESHOLDS = {
|
|
116
|
+
snapshot: 50,
|
|
117
|
+
delta: 16
|
|
118
|
+
};
|
|
119
|
+
function checkPerformance(metric) {
|
|
120
|
+
var threshold = PERFORMANCE_THRESHOLDS[metric.type];
|
|
121
|
+
if (metric.duration > threshold) {
|
|
122
|
+
console.warn("[json-render Performance Warning] ".concat(metric.type, " \u6E32\u67D3\u8017\u65F6 ").concat(metric.duration.toFixed(2), "ms\uFF0C\u8D85\u8FC7\u9608\u503C ").concat(threshold, "ms"), {
|
|
123
|
+
elementCount: metric.elementCount,
|
|
124
|
+
deltaInfo: metric.deltaInfo
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
var performance$1 = {
|
|
129
|
+
PerformanceMonitor: PerformanceMonitor,
|
|
130
|
+
globalPerformanceMonitor: globalPerformanceMonitor,
|
|
131
|
+
checkPerformance: checkPerformance
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
export { PERFORMANCE_THRESHOLDS, PerformanceMonitor, checkPerformance, performance$1 as default, globalPerformanceMonitor };
|
|
135
|
+
//# sourceMappingURL=performance.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"performance.js","sources":["../../../../../pro-components/chat/chat-engine/components/json-render/performance.ts"],"sourcesContent":["/**\n * json-render 性能监控和优化工具\n */\n\n/**\n * 性能指标\n */\nexport interface PerformanceMetrics {\n /** 渲染类型 */\n type: 'snapshot' | 'delta';\n /** 渲染开始时间 */\n startTime: number;\n /** 渲染结束时间 */\n endTime: number;\n /** 渲染耗时(ms) */\n duration: number;\n /** Schema 元素数量 */\n elementCount: number;\n /** 增量信息(仅 delta 类型) */\n deltaInfo?: {\n fromIndex: number;\n toIndex: number;\n newElementsCount: number;\n };\n}\n\n/**\n * 性能监控器\n */\nexport class PerformanceMonitor {\n private metrics: PerformanceMetrics[] = [];\n private maxMetricsCount = 100; // 最多保留 100 条记录\n\n /**\n * 开始性能测量\n */\n start(): () => PerformanceMetrics {\n const startTime = performance.now();\n \n return (\n type: 'snapshot' | 'delta',\n elementCount: number,\n deltaInfo?: { fromIndex: number; toIndex: number },\n ): PerformanceMetrics => {\n const endTime = performance.now();\n const duration = endTime - startTime;\n\n const metric: PerformanceMetrics = {\n type,\n startTime,\n endTime,\n duration,\n elementCount,\n deltaInfo: deltaInfo\n ? {\n fromIndex: deltaInfo.fromIndex,\n toIndex: deltaInfo.toIndex,\n newElementsCount: deltaInfo.toIndex - deltaInfo.fromIndex,\n }\n : undefined,\n };\n\n this.addMetric(metric);\n return metric;\n };\n }\n\n /**\n * 添加性能指标\n */\n private addMetric(metric: PerformanceMetrics): void {\n this.metrics.push(metric);\n\n // 限制记录数量\n if (this.metrics.length > this.maxMetricsCount) {\n this.metrics.shift();\n }\n }\n\n /**\n * 获取所有指标\n */\n getMetrics(): PerformanceMetrics[] {\n return [...this.metrics];\n }\n\n /**\n * 获取平均渲染时间\n */\n getAverageDuration(type?: 'snapshot' | 'delta'): number {\n const filteredMetrics = type\n ? this.metrics.filter((m) => m.type === type)\n : this.metrics;\n\n if (filteredMetrics.length === 0) return 0;\n\n const totalDuration = filteredMetrics.reduce((sum, m) => sum + m.duration, 0);\n return totalDuration / filteredMetrics.length;\n }\n\n /**\n * 获取最近 N 次渲染的平均时间\n */\n getRecentAverageDuration(count: number = 10): number {\n const recentMetrics = this.metrics.slice(-count);\n if (recentMetrics.length === 0) return 0;\n\n const totalDuration = recentMetrics.reduce((sum, m) => sum + m.duration, 0);\n return totalDuration / recentMetrics.length;\n }\n\n /**\n * 获取性能统计摘要\n */\n getSummary() {\n return {\n totalRenders: this.metrics.length,\n snapshotRenders: this.metrics.filter((m) => m.type === 'snapshot').length,\n deltaRenders: this.metrics.filter((m) => m.type === 'delta').length,\n avgSnapshotDuration: this.getAverageDuration('snapshot'),\n avgDeltaDuration: this.getAverageDuration('delta'),\n recentAvgDuration: this.getRecentAverageDuration(),\n };\n }\n\n /**\n * 重置所有指标\n */\n reset(): void {\n this.metrics = [];\n }\n\n /**\n * 打印性能摘要\n */\n printSummary(): void {\n const summary = this.getSummary();\n console.log('[json-render Performance Summary]', {\n '总渲染次数': summary.totalRenders,\n '快照渲染': summary.snapshotRenders,\n '增量渲染': summary.deltaRenders,\n '快照平均耗时(ms)': summary.avgSnapshotDuration.toFixed(2),\n '增量平均耗时(ms)': summary.avgDeltaDuration.toFixed(2),\n '最近10次平均耗时(ms)': summary.recentAvgDuration.toFixed(2),\n });\n }\n}\n\n/**\n * 全局性能监控实例\n */\nexport const globalPerformanceMonitor = new PerformanceMonitor();\n\n/**\n * 性能警告阈值(ms)\n */\nexport const PERFORMANCE_THRESHOLDS = {\n snapshot: 50, // 快照渲染超过 50ms 发出警告\n delta: 16, // 增量渲染超过 16ms 发出警告(1帧)\n};\n\n/**\n * 检查性能并发出警告\n */\nexport function checkPerformance(metric: PerformanceMetrics): void {\n const threshold = PERFORMANCE_THRESHOLDS[metric.type];\n \n if (metric.duration > threshold) {\n console.warn(\n `[json-render Performance Warning] ${metric.type} 渲染耗时 ${metric.duration.toFixed(2)}ms,超过阈值 ${threshold}ms`,\n {\n elementCount: metric.elementCount,\n deltaInfo: metric.deltaInfo,\n },\n );\n }\n}\n\nexport default {\n PerformanceMonitor,\n globalPerformanceMonitor,\n checkPerformance,\n};\n"],"names":["PerformanceMonitor","_classCallCheck","_defineProperty","_createClass","key","value","start","_this","startTime","performance","now","type","elementCount","deltaInfo","endTime","duration","metric","fromIndex","toIndex","newElementsCount","addMetric","metrics","push","length","maxMetricsCount","shift","getMetrics","_toConsumableArray","getAverageDuration","filteredMetrics","filter","m","totalDuration","reduce","sum","getRecentAverageDuration","count","recentMetrics","slice","getSummary","totalRenders","snapshotRenders","deltaRenders","avgSnapshotDuration","avgDeltaDuration","recentAvgDuration","reset","printSummary","summary","console","log","toFixed","globalPerformanceMonitor","PERFORMANCE_THRESHOLDS","snapshot","delta","checkPerformance","threshold","warn","concat"],"mappings":"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"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { type ComponentType, type ReactNode } from "react";
|
|
2
|
+
import type { UIElement, UITree, Action, Catalog, ComponentDefinition } from "@json-render/core";
|
|
3
|
+
/**
|
|
4
|
+
* Props passed to component renderers
|
|
5
|
+
*/
|
|
6
|
+
export interface ComponentRenderProps<P = Record<string, unknown>> {
|
|
7
|
+
/** The element being rendered */
|
|
8
|
+
element: UIElement<string, P>;
|
|
9
|
+
/** Rendered children */
|
|
10
|
+
children?: ReactNode;
|
|
11
|
+
/** Execute an action */
|
|
12
|
+
onAction?: (action: Action) => void;
|
|
13
|
+
/** Whether the parent is loading */
|
|
14
|
+
loading?: boolean;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Component renderer type
|
|
18
|
+
*/
|
|
19
|
+
export type ComponentRenderer<P = Record<string, unknown>> = ComponentType<ComponentRenderProps<P>>;
|
|
20
|
+
/**
|
|
21
|
+
* Registry of component renderers
|
|
22
|
+
*/
|
|
23
|
+
export type ComponentRegistry = Record<string, ComponentRenderer<any>>;
|
|
24
|
+
/**
|
|
25
|
+
* Props for the Renderer component
|
|
26
|
+
*/
|
|
27
|
+
export interface RendererProps {
|
|
28
|
+
/** The UI tree to render */
|
|
29
|
+
tree: UITree | null;
|
|
30
|
+
/** Component registry */
|
|
31
|
+
registry: ComponentRegistry;
|
|
32
|
+
/** Whether the tree is currently loading/streaming */
|
|
33
|
+
loading?: boolean;
|
|
34
|
+
/** Fallback component for unknown types */
|
|
35
|
+
fallback?: ComponentRenderer;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Main renderer component
|
|
39
|
+
*/
|
|
40
|
+
export declare function Renderer({ tree, registry, loading, fallback }: RendererProps): import("react/jsx-runtime").JSX.Element;
|
|
41
|
+
/**
|
|
42
|
+
* Props for JSONUIProvider
|
|
43
|
+
*/
|
|
44
|
+
export interface JSONUIProviderProps {
|
|
45
|
+
/** Component registry */
|
|
46
|
+
registry: ComponentRegistry;
|
|
47
|
+
/** Initial data model */
|
|
48
|
+
initialData?: Record<string, unknown>;
|
|
49
|
+
/** Auth state */
|
|
50
|
+
authState?: {
|
|
51
|
+
isSignedIn: boolean;
|
|
52
|
+
user?: Record<string, unknown>;
|
|
53
|
+
};
|
|
54
|
+
/** Action handlers */
|
|
55
|
+
actionHandlers?: Record<string, (params: Record<string, unknown>) => Promise<unknown> | unknown>;
|
|
56
|
+
/** Navigation function */
|
|
57
|
+
navigate?: (path: string) => void;
|
|
58
|
+
/** Custom validation functions */
|
|
59
|
+
validationFunctions?: Record<string, (value: unknown, args?: Record<string, unknown>) => boolean>;
|
|
60
|
+
/** Callback when data changes */
|
|
61
|
+
onDataChange?: (path: string, value: unknown) => void;
|
|
62
|
+
children: ReactNode;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Combined provider for all JSONUI contexts
|
|
66
|
+
*/
|
|
67
|
+
export declare function JSONUIProvider({ registry, initialData, authState, actionHandlers, navigate, validationFunctions, onDataChange, children, }: JSONUIProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
68
|
+
/**
|
|
69
|
+
* Helper to create a renderer component from a catalog
|
|
70
|
+
*/
|
|
71
|
+
export declare function createRendererFromCatalog<C extends Catalog<Record<string, ComponentDefinition>>>(_catalog: C, registry: ComponentRegistry): ComponentType<Omit<RendererProps, "registry">>;
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* tdesign v1.0.2-alpha.15
|
|
3
|
+
* (c) 2026 tdesign
|
|
4
|
+
* @license MIT
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
8
|
+
import React from 'react';
|
|
9
|
+
import { useIsVisible, VisibilityProvider } from './contexts/visibility.js';
|
|
10
|
+
import { useActions, ActionProvider, ConfirmDialog } from './contexts/actions.js';
|
|
11
|
+
import { DataProvider } from './contexts/data.js';
|
|
12
|
+
import { ValidationProvider } from './contexts/validation.js';
|
|
13
|
+
import '@json-render/core';
|
|
14
|
+
import '@babel/runtime/helpers/typeof';
|
|
15
|
+
import '@babel/runtime/helpers/slicedToArray';
|
|
16
|
+
import '@babel/runtime/helpers/asyncToGenerator';
|
|
17
|
+
import '@babel/runtime/regenerator';
|
|
18
|
+
import '@babel/runtime/helpers/objectWithoutProperties';
|
|
19
|
+
|
|
20
|
+
"use client";
|
|
21
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
22
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
23
|
+
function ElementRenderer(_ref) {
|
|
24
|
+
var _registry$element$typ, _element$children;
|
|
25
|
+
var element = _ref.element,
|
|
26
|
+
tree = _ref.tree,
|
|
27
|
+
registry = _ref.registry,
|
|
28
|
+
loading = _ref.loading,
|
|
29
|
+
fallback = _ref.fallback;
|
|
30
|
+
var isVisible = useIsVisible(element.visible);
|
|
31
|
+
var _useActions = useActions(),
|
|
32
|
+
execute = _useActions.execute;
|
|
33
|
+
if (!isVisible) {
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
var Component = (_registry$element$typ = registry[element.type]) !== null && _registry$element$typ !== void 0 ? _registry$element$typ : fallback;
|
|
37
|
+
if (!Component) {
|
|
38
|
+
console.warn("No renderer for component type: ".concat(element.type));
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
var children = (_element$children = element.children) === null || _element$children === void 0 ? void 0 : _element$children.map(function (childKey) {
|
|
42
|
+
var childElement = tree.elements[childKey];
|
|
43
|
+
if (!childElement) {
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
return /* @__PURE__ */React.createElement(ElementRenderer, {
|
|
47
|
+
key: childKey,
|
|
48
|
+
element: childElement,
|
|
49
|
+
tree: tree,
|
|
50
|
+
registry: registry,
|
|
51
|
+
loading: loading,
|
|
52
|
+
fallback: fallback
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
return /* @__PURE__ */React.createElement(Component, {
|
|
56
|
+
element: element,
|
|
57
|
+
onAction: execute,
|
|
58
|
+
loading: loading
|
|
59
|
+
}, children);
|
|
60
|
+
}
|
|
61
|
+
function Renderer(_ref2) {
|
|
62
|
+
var tree = _ref2.tree,
|
|
63
|
+
registry = _ref2.registry,
|
|
64
|
+
loading = _ref2.loading,
|
|
65
|
+
fallback = _ref2.fallback;
|
|
66
|
+
if (!tree || !tree.root) {
|
|
67
|
+
return null;
|
|
68
|
+
}
|
|
69
|
+
var rootElement = tree.elements[tree.root];
|
|
70
|
+
if (!rootElement) {
|
|
71
|
+
return null;
|
|
72
|
+
}
|
|
73
|
+
return /* @__PURE__ */React.createElement(ElementRenderer, {
|
|
74
|
+
element: rootElement,
|
|
75
|
+
tree: tree,
|
|
76
|
+
registry: registry,
|
|
77
|
+
loading: loading,
|
|
78
|
+
fallback: fallback
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
function JSONUIProvider(_ref3) {
|
|
82
|
+
var registry = _ref3.registry,
|
|
83
|
+
initialData = _ref3.initialData,
|
|
84
|
+
authState = _ref3.authState,
|
|
85
|
+
actionHandlers = _ref3.actionHandlers,
|
|
86
|
+
navigate = _ref3.navigate,
|
|
87
|
+
validationFunctions = _ref3.validationFunctions,
|
|
88
|
+
onDataChange = _ref3.onDataChange,
|
|
89
|
+
children = _ref3.children;
|
|
90
|
+
return /* @__PURE__ */React.createElement(DataProvider, {
|
|
91
|
+
initialData: initialData,
|
|
92
|
+
authState: authState,
|
|
93
|
+
onDataChange: onDataChange
|
|
94
|
+
}, /* @__PURE__ */React.createElement(VisibilityProvider, null, /* @__PURE__ */React.createElement(ActionProvider, {
|
|
95
|
+
handlers: actionHandlers,
|
|
96
|
+
navigate: navigate
|
|
97
|
+
}, /* @__PURE__ */React.createElement(ValidationProvider, {
|
|
98
|
+
customFunctions: validationFunctions
|
|
99
|
+
}, children, /* @__PURE__ */React.createElement(ConfirmationDialogManager, null)))));
|
|
100
|
+
}
|
|
101
|
+
function ConfirmationDialogManager() {
|
|
102
|
+
var _useActions2 = useActions(),
|
|
103
|
+
pendingConfirmation = _useActions2.pendingConfirmation,
|
|
104
|
+
confirm = _useActions2.confirm,
|
|
105
|
+
cancel = _useActions2.cancel;
|
|
106
|
+
if (!(pendingConfirmation !== null && pendingConfirmation !== void 0 && pendingConfirmation.action.confirm)) {
|
|
107
|
+
return null;
|
|
108
|
+
}
|
|
109
|
+
return /* @__PURE__ */React.createElement(ConfirmDialog, {
|
|
110
|
+
confirm: pendingConfirmation.action.confirm,
|
|
111
|
+
onConfirm: confirm,
|
|
112
|
+
onCancel: cancel
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
function createRendererFromCatalog(_catalog, registry) {
|
|
116
|
+
return function CatalogRenderer(props) {
|
|
117
|
+
return /* @__PURE__ */React.createElement(Renderer, _objectSpread(_objectSpread({}, props), {}, {
|
|
118
|
+
registry: registry
|
|
119
|
+
}));
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
export { JSONUIProvider, Renderer, createRendererFromCatalog };
|
|
124
|
+
//# sourceMappingURL=renderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderer.js","sources":["../../../../../pro-components/chat/chat-engine/components/json-render/renderer.tsx"],"sourcesContent":["\"use client\";\n\nimport React, { type ComponentType, type ReactNode, useMemo } from \"react\";\nimport type {\n UIElement,\n UITree,\n Action,\n Catalog,\n ComponentDefinition,\n} from \"@json-render/core\";\nimport { useIsVisible } from \"./contexts/visibility\";\nimport { useActions } from \"./contexts/actions\";\n\n/**\n * Props passed to component renderers\n */\nexport interface ComponentRenderProps<P = Record<string, unknown>> {\n /** The element being rendered */\n element: UIElement<string, P>;\n /** Rendered children */\n children?: ReactNode;\n /** Execute an action */\n onAction?: (action: Action) => void;\n /** Whether the parent is loading */\n loading?: boolean;\n}\n\n/**\n * Component renderer type\n */\nexport type ComponentRenderer<P = Record<string, unknown>> = ComponentType<\n ComponentRenderProps<P>\n>;\n\n/**\n * Registry of component renderers\n */\nexport type ComponentRegistry = Record<string, ComponentRenderer<any>>;\n\n/**\n * Props for the Renderer component\n */\nexport interface RendererProps {\n /** The UI tree to render */\n tree: UITree | null;\n /** Component registry */\n registry: ComponentRegistry;\n /** Whether the tree is currently loading/streaming */\n loading?: boolean;\n /** Fallback component for unknown types */\n fallback?: ComponentRenderer;\n}\n\n/**\n * Element renderer component\n */\nfunction ElementRenderer({\n element,\n tree,\n registry,\n loading,\n fallback,\n}: {\n element: UIElement;\n tree: UITree;\n registry: ComponentRegistry;\n loading?: boolean;\n fallback?: ComponentRenderer;\n}) {\n const isVisible = useIsVisible(element.visible);\n const { execute } = useActions();\n\n // Don't render if not visible\n if (!isVisible) {\n return null;\n }\n\n // Get the component renderer\n const Component = registry[element.type] ?? fallback;\n\n if (!Component) {\n console.warn(`No renderer for component type: ${element.type}`);\n return null;\n }\n\n // Render children\n const children = element.children?.map((childKey) => {\n const childElement = tree.elements[childKey];\n if (!childElement) {\n return null;\n }\n return (\n <ElementRenderer\n key={childKey}\n element={childElement}\n tree={tree}\n registry={registry}\n loading={loading}\n fallback={fallback}\n />\n );\n });\n\n return (\n <Component element={element} onAction={execute} loading={loading}>\n {children}\n </Component>\n );\n}\n\n/**\n * Main renderer component\n */\nexport function Renderer({ tree, registry, loading, fallback }: RendererProps) {\n if (!tree || !tree.root) {\n return null;\n }\n\n const rootElement = tree.elements[tree.root];\n if (!rootElement) {\n return null;\n }\n\n return (\n <ElementRenderer\n element={rootElement}\n tree={tree}\n registry={registry}\n loading={loading}\n fallback={fallback}\n />\n );\n}\n\n/**\n * Props for JSONUIProvider\n */\nexport interface JSONUIProviderProps {\n /** Component registry */\n registry: ComponentRegistry;\n /** Initial data model */\n initialData?: Record<string, unknown>;\n /** Auth state */\n authState?: { isSignedIn: boolean; user?: Record<string, unknown> };\n /** Action handlers */\n actionHandlers?: Record<\n string,\n (params: Record<string, unknown>) => Promise<unknown> | unknown\n >;\n /** Navigation function */\n navigate?: (path: string) => void;\n /** Custom validation functions */\n validationFunctions?: Record<\n string,\n (value: unknown, args?: Record<string, unknown>) => boolean\n >;\n /** Callback when data changes */\n onDataChange?: (path: string, value: unknown) => void;\n children: ReactNode;\n}\n\n// Import the providers\nimport { DataProvider } from \"./contexts/data\";\nimport { VisibilityProvider } from \"./contexts/visibility\";\nimport { ActionProvider } from \"./contexts/actions\";\nimport { ValidationProvider } from \"./contexts/validation\";\nimport { ConfirmDialog } from \"./contexts/actions\";\n\n/**\n * Combined provider for all JSONUI contexts\n */\nexport function JSONUIProvider({\n registry,\n initialData,\n authState,\n actionHandlers,\n navigate,\n validationFunctions,\n onDataChange,\n children,\n}: JSONUIProviderProps) {\n return (\n <DataProvider\n initialData={initialData}\n authState={authState}\n onDataChange={onDataChange}\n >\n <VisibilityProvider>\n <ActionProvider handlers={actionHandlers} navigate={navigate}>\n <ValidationProvider customFunctions={validationFunctions}>\n {children}\n <ConfirmationDialogManager />\n </ValidationProvider>\n </ActionProvider>\n </VisibilityProvider>\n </DataProvider>\n );\n}\n\n/**\n * Renders the confirmation dialog when needed\n */\nfunction ConfirmationDialogManager() {\n const { pendingConfirmation, confirm, cancel } = useActions();\n\n if (!pendingConfirmation?.action.confirm) {\n return null;\n }\n\n return (\n <ConfirmDialog\n confirm={pendingConfirmation.action.confirm}\n onConfirm={confirm}\n onCancel={cancel}\n />\n );\n}\n\n/**\n * Helper to create a renderer component from a catalog\n */\nexport function createRendererFromCatalog<\n C extends Catalog<Record<string, ComponentDefinition>>,\n>(\n _catalog: C,\n registry: ComponentRegistry,\n): ComponentType<Omit<RendererProps, \"registry\">> {\n return function CatalogRenderer(props: Omit<RendererProps, \"registry\">) {\n return <Renderer {...props} registry={registry} />;\n };\n}\n"],"names":["ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","ElementRenderer","_ref","_registry$element$typ","_element$children","element","tree","registry","loading","fallback","isVisible","useIsVisible","visible","_useActions","useActions","execute","Component","type","console","warn","concat","children","map","childKey","childElement","elements","React","createElement","key","onAction","Renderer","_ref2","root","rootElement","JSONUIProvider","_ref3","initialData","authState","actionHandlers","navigate","validationFunctions","onDataChange","DataProvider","VisibilityProvider","ActionProvider","handlers","ValidationProvider","customFunctions","ConfirmationDialogManager","_useActions2","pendingConfirmation","confirm","cancel","action","ConfirmDialog","onConfirm","onCancel","createRendererFromCatalog","_catalog","CatalogRenderer","props"],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* json-render 集成相关类型定义
|
|
3
|
+
*/
|
|
4
|
+
import type { UITree, UIElement } from '@json-render/core';
|
|
5
|
+
import type { ComponentRenderProps, ComponentRegistry } from '@json-render/react';
|
|
6
|
+
/**
|
|
7
|
+
* json-render Activity 内容格式
|
|
8
|
+
* 用于 ACTIVITY_SNAPSHOT 和 ACTIVITY_DELTA 事件
|
|
9
|
+
*/
|
|
10
|
+
export interface JsonRenderSchema extends UITree {
|
|
11
|
+
root: string;
|
|
12
|
+
elements: Record<string, UIElement>;
|
|
13
|
+
data?: Record<string, unknown>;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* 组件目录(Catalog)定义
|
|
17
|
+
* 映射组件类型到 React 组件实现
|
|
18
|
+
* 使用 @json-render/react 的 ComponentRegistry 类型
|
|
19
|
+
*/
|
|
20
|
+
export type ComponentCatalog = ComponentRegistry;
|
|
21
|
+
export type { ComponentRenderProps };
|
|
22
|
+
/**
|
|
23
|
+
* 渲染上下文配置
|
|
24
|
+
*/
|
|
25
|
+
export interface JsonRenderContext {
|
|
26
|
+
/** 渲染模式:direct(直接模式) | adapter(适配模式) */
|
|
27
|
+
mode: 'direct' | 'adapter';
|
|
28
|
+
/** 组件目录 */
|
|
29
|
+
catalog: ComponentCatalog;
|
|
30
|
+
/** 可选:自定义数据 */
|
|
31
|
+
customData?: Record<string, unknown>;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* 增量更新信息
|
|
35
|
+
* 从 event-mapper 的 deltaInfo 传递过来
|
|
36
|
+
*/
|
|
37
|
+
export interface DeltaInfo {
|
|
38
|
+
/** 新增元素的起始索引 */
|
|
39
|
+
fromIndex: number;
|
|
40
|
+
/** 新增元素的结束索引 */
|
|
41
|
+
toIndex: number;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* json-render Activity 渲染器 Props
|
|
45
|
+
*/
|
|
46
|
+
export interface JsonRenderActivityProps {
|
|
47
|
+
/** Activity 类型 */
|
|
48
|
+
activityType: string;
|
|
49
|
+
/** json-render Schema 内容 */
|
|
50
|
+
content: JsonRenderSchema;
|
|
51
|
+
/** 关联的消息 ID */
|
|
52
|
+
messageId: string;
|
|
53
|
+
/** 扩展属性(包含 deltaInfo) */
|
|
54
|
+
ext?: {
|
|
55
|
+
deltaInfo?: DeltaInfo;
|
|
56
|
+
[key: string]: any;
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* A2UI → json-render 转换配置
|
|
61
|
+
*/
|
|
62
|
+
export interface A2UIAdapterConfig {
|
|
63
|
+
/** 启用适配模式 */
|
|
64
|
+
enabled: boolean;
|
|
65
|
+
/** 自定义类型映射表 */
|
|
66
|
+
typeMapping?: Record<string, string>;
|
|
67
|
+
/** 自定义属性映射 */
|
|
68
|
+
propsMapping?: Record<string, (value: any) => any>;
|
|
69
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|