@dxos/plugin-assistant 0.9.1-main.c7dcc2e112 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/PLUGIN.mdl +18 -24
- package/dist/lib/neutral/{AgentArticle-2BEPWUMN.mjs → AgentArticle-GV6EEW3I.mjs} +1 -2
- package/dist/lib/neutral/AgentArticle-GV6EEW3I.mjs.map +7 -0
- package/dist/lib/neutral/AssistantPlugin.mjs +1 -1
- package/dist/lib/neutral/AssistantPlugin.node.mjs +6 -6
- package/dist/lib/neutral/AssistantPlugin.node.mjs.map +3 -3
- package/dist/lib/neutral/AssistantPlugin.workerd.mjs +7 -34
- package/dist/lib/neutral/AssistantPlugin.workerd.mjs.map +4 -4
- package/dist/lib/neutral/AssistantSettings-3N5M5VCN.mjs +302 -0
- package/dist/lib/neutral/AssistantSettings-3N5M5VCN.mjs.map +7 -0
- package/dist/lib/neutral/{ChatArticle-KT46SUFU.mjs → ChatArticle-OO7GGEFW.mjs} +2 -2
- package/dist/lib/neutral/{ChatCompanion-YHC43RYQ.mjs → ChatCompanion-GIFJRY6I.mjs} +27 -27
- package/dist/lib/neutral/ChatCompanion-GIFJRY6I.mjs.map +7 -0
- package/dist/lib/neutral/{ChatDialog-YZDZLIQA.mjs → ChatDialog-5MXN4MXS.mjs} +5 -5
- package/dist/lib/neutral/ChatDialog-5MXN4MXS.mjs.map +7 -0
- package/dist/lib/neutral/IntegrationPrompt-2HJQFYJE.mjs +72 -0
- package/dist/lib/neutral/IntegrationPrompt-2HJQFYJE.mjs.map +7 -0
- package/dist/lib/neutral/{SpaceHomePrompt-HTWQKLGI.mjs → SpaceHomePrompt-ISAB76LD.mjs} +8 -7
- package/dist/lib/neutral/SpaceHomePrompt-ISAB76LD.mjs.map +7 -0
- package/dist/lib/neutral/SpaceHomeSuggestions-IDH77QQR.mjs +63 -0
- package/dist/lib/neutral/SpaceHomeSuggestions-IDH77QQR.mjs.map +7 -0
- package/dist/lib/neutral/{TracePanel-T552TAOH.mjs → TracePanel-JKNWADJ4.mjs} +2 -2
- package/dist/lib/neutral/{TriggerStatus-RBOHHDOK.mjs → TriggerStatus-FURRBHYA.mjs} +7 -5
- package/dist/lib/neutral/TriggerStatus-FURRBHYA.mjs.map +7 -0
- package/dist/lib/neutral/{agent-hydrator-PJBYVMBW.mjs → agent-hydrator-OBO3RHLO.mjs} +3 -4
- package/dist/lib/neutral/agent-hydrator-OBO3RHLO.mjs.map +7 -0
- package/dist/lib/neutral/{agent-service-WV5CSHAG.mjs → agent-service-XFJ4VQMT.mjs} +7 -9
- package/dist/lib/neutral/agent-service-XFJ4VQMT.mjs.map +7 -0
- package/dist/lib/neutral/ai-context-LIKJYMIN.mjs +14 -0
- package/dist/lib/neutral/ai-context-LIKJYMIN.mjs.map +7 -0
- package/dist/lib/neutral/{ai-service-AADUIKBY.mjs → ai-service-DM6YXWUC.mjs} +9 -5
- package/dist/lib/neutral/ai-service-DM6YXWUC.mjs.map +7 -0
- package/dist/lib/neutral/{app-graph-builder-PTSRZXRN.mjs → app-graph-builder-OPVOEQY7.mjs} +36 -19
- package/dist/lib/neutral/app-graph-builder-OPVOEQY7.mjs.map +7 -0
- package/dist/lib/neutral/automation-templates-MADJLXGJ.mjs +97 -0
- package/dist/lib/neutral/automation-templates-MADJLXGJ.mjs.map +7 -0
- package/dist/lib/neutral/capabilities/index.mjs +20 -18
- package/dist/lib/neutral/capabilities/index.mjs.map +3 -3
- package/dist/lib/neutral/{chunk-KLYLW4WH.mjs → chunk-5IHQ52KJ.mjs} +1 -1
- package/dist/lib/neutral/chunk-5IHQ52KJ.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-5KB2WRI2.mjs → chunk-6Q4OBGIK.mjs} +83 -55
- package/dist/lib/neutral/chunk-6Q4OBGIK.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-54W7N6M6.mjs → chunk-BXI2R4OO.mjs} +49 -84
- package/dist/lib/neutral/chunk-BXI2R4OO.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-5H6UJHLF.mjs → chunk-CMPLPDYE.mjs} +12 -12
- package/dist/lib/neutral/chunk-CMPLPDYE.mjs.map +7 -0
- package/dist/lib/neutral/chunk-GPHT3HYS.mjs +8 -0
- package/dist/lib/neutral/{chunk-7FQT4XMI.mjs.map → chunk-GPHT3HYS.mjs.map} +2 -2
- package/dist/lib/neutral/{markdown-extension-IJ5RQMQ4.mjs → chunk-HKLSFB5I.mjs} +2 -38
- package/dist/lib/neutral/chunk-HKLSFB5I.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-ZNDQVYUN.mjs → chunk-L7AR4VTA.mjs} +3 -3
- package/dist/lib/neutral/{chunk-ZNDQVYUN.mjs.map → chunk-L7AR4VTA.mjs.map} +1 -1
- package/dist/lib/neutral/chunk-LS72HWMM.mjs +42 -0
- package/dist/lib/neutral/chunk-LS72HWMM.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-35EL65O4.mjs → chunk-OZWZGIV2.mjs} +4 -2
- package/dist/lib/neutral/{chunk-35EL65O4.mjs.map → chunk-OZWZGIV2.mjs.map} +3 -3
- package/dist/lib/neutral/{toolkit-GVWXPDLJ.mjs → chunk-QOKLFHUS.mjs} +3 -4
- package/dist/lib/neutral/{toolkit-GVWXPDLJ.mjs.map → chunk-QOKLFHUS.mjs.map} +1 -1
- package/dist/lib/neutral/{chunk-5LKNH7FD.mjs → chunk-SCTHQVIJ.mjs} +8 -5
- package/dist/lib/neutral/{chunk-5LKNH7FD.mjs.map → chunk-SCTHQVIJ.mjs.map} +3 -3
- package/dist/lib/neutral/chunk-U4LTLBAX.mjs +56 -0
- package/dist/lib/neutral/chunk-U4LTLBAX.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-H77JTXAN.mjs → chunk-UPKFUZ6V.mjs} +7 -10
- package/dist/lib/neutral/chunk-UPKFUZ6V.mjs.map +7 -0
- package/dist/lib/neutral/{operation-handler-SF36MOB5.mjs → chunk-V2Y4XE3O.mjs} +3 -4
- package/dist/lib/neutral/{operation-handler-SF36MOB5.mjs.map → chunk-V2Y4XE3O.mjs.map} +1 -1
- package/dist/lib/neutral/chunk-VTK5R4H3.mjs +9 -0
- package/dist/lib/neutral/chunk-VTK5R4H3.mjs.map +7 -0
- package/dist/lib/neutral/chunk-XVGEJWJX.mjs +133 -0
- package/dist/lib/neutral/chunk-XVGEJWJX.mjs.map +7 -0
- package/dist/lib/neutral/{companion-chat-provisioner-YZZ73P6E.mjs → companion-chat-provisioner-IQV5VIVE.mjs} +14 -8
- package/dist/lib/neutral/companion-chat-provisioner-IQV5VIVE.mjs.map +7 -0
- package/dist/lib/neutral/components/index.mjs +509 -579
- package/dist/lib/neutral/components/index.mjs.map +4 -4
- package/dist/lib/neutral/{integration-provider-RBD3AFJU.mjs → connector-ITLLTBPZ.mjs} +13 -14
- package/dist/lib/neutral/connector-ITLLTBPZ.mjs.map +7 -0
- package/dist/lib/neutral/containers/index.mjs +12 -14
- package/dist/lib/neutral/containers/index.mjs.map +3 -3
- package/dist/lib/neutral/{create-chat-Z3FNA6OJ.mjs → create-chat-YGVZZYGP.mjs} +18 -16
- package/dist/lib/neutral/create-chat-YGVZZYGP.mjs.map +7 -0
- package/dist/lib/neutral/{create-object-BJUDDKQQ.mjs → create-object-5PAEJ6KM.mjs} +11 -27
- package/dist/lib/neutral/create-object-5PAEJ6KM.mjs.map +7 -0
- package/dist/lib/neutral/{edge-model-resolver-BBVOJBGJ.mjs → edge-model-resolver-WDJWDZTT.mjs} +2 -2
- package/dist/lib/neutral/execution-graph/index.mjs +182 -64
- package/dist/lib/neutral/execution-graph/index.mjs.map +3 -3
- package/dist/lib/neutral/extensions/index.mjs +8 -0
- package/dist/lib/neutral/{fork-chat-UYXYT6BT.mjs → fork-chat-RMAAYYQF.mjs} +15 -18
- package/dist/lib/neutral/fork-chat-RMAAYYQF.mjs.map +7 -0
- package/dist/lib/neutral/generate-home-suggestions-6MM2XWPV.mjs +93 -0
- package/dist/lib/neutral/generate-home-suggestions-6MM2XWPV.mjs.map +7 -0
- package/dist/lib/neutral/hooks/index.mjs +195 -105
- package/dist/lib/neutral/hooks/index.mjs.map +4 -4
- package/dist/lib/neutral/index.mjs +14 -10
- package/dist/lib/neutral/markdown-extension-R4TKDTIF.mjs +41 -0
- package/dist/lib/neutral/markdown-extension-R4TKDTIF.mjs.map +7 -0
- package/dist/lib/neutral/meta.json +1 -1
- package/dist/lib/neutral/meta.mjs +1 -1
- package/dist/lib/neutral/navigation-resolver-PYGP2DAW.mjs +18 -0
- package/dist/lib/neutral/navigation-resolver-PYGP2DAW.mjs.map +7 -0
- package/dist/lib/neutral/operation-handler-2LEN45GP.mjs +8 -0
- package/dist/lib/neutral/operation-handler-2LEN45GP.mjs.map +7 -0
- package/dist/lib/neutral/operations/index.mjs +1 -1
- package/dist/lib/neutral/plugin.mjs +2 -2
- package/dist/lib/neutral/plugin.workerd.mjs +13 -0
- package/dist/lib/neutral/plugin.workerd.mjs.map +7 -0
- package/dist/lib/neutral/{react-surface-ES7UHZ65.mjs → react-surface-HEJEK44F.mjs} +20 -35
- package/dist/lib/neutral/react-surface-HEJEK44F.mjs.map +7 -0
- package/dist/lib/neutral/resolve-navigation-targets-PBQ3OLUE.mjs +28 -0
- package/dist/lib/neutral/resolve-navigation-targets-PBQ3OLUE.mjs.map +7 -0
- package/dist/lib/neutral/{run-prompt-in-new-chat-NIAGCKQV.mjs → run-prompt-in-new-chat-RNUJE2FM.mjs} +28 -31
- package/dist/lib/neutral/run-prompt-in-new-chat-RNUJE2FM.mjs.map +7 -0
- package/dist/lib/neutral/skill-definition-553MQRTR.mjs +8 -0
- package/dist/lib/neutral/skill-definition-553MQRTR.mjs.map +7 -0
- package/dist/lib/neutral/skills/index.mjs +8 -0
- package/dist/lib/neutral/skills/index.mjs.map +7 -0
- package/dist/lib/neutral/{state-XO2UYSSG.mjs → state-4LGAKSSD.mjs} +8 -2
- package/dist/lib/neutral/{state-XO2UYSSG.mjs.map → state-4LGAKSSD.mjs.map} +3 -3
- package/dist/lib/neutral/testing.mjs +1 -1
- package/dist/lib/neutral/toolkit-ETWLG5NT.mjs +8 -0
- package/dist/lib/neutral/toolkit-ETWLG5NT.mjs.map +7 -0
- package/dist/lib/neutral/translations.mjs +64 -33
- package/dist/lib/neutral/translations.mjs.map +3 -3
- package/dist/lib/neutral/types/index.mjs +5 -1
- package/dist/lib/neutral/{update-chat-name-Y7JWIP64.mjs → update-chat-name-IJJELRR6.mjs} +3 -3
- package/dist/lib/neutral/{update-chat-name-Y7JWIP64.mjs.map → update-chat-name-IJJELRR6.mjs.map} +2 -2
- package/dist/types/src/AssistantPlugin.d.ts.map +1 -1
- package/dist/types/src/AssistantPlugin.workerd.d.ts.map +1 -1
- package/dist/types/src/capabilities/agent-hydrator.d.ts +1 -1
- package/dist/types/src/capabilities/agent-service.d.ts +1 -2
- package/dist/types/src/capabilities/agent-service.d.ts.map +1 -1
- package/dist/types/src/capabilities/ai-context.d.ts +1 -2
- package/dist/types/src/capabilities/ai-context.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts +1 -3
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/capabilities/automation-templates.d.ts +1 -2
- package/dist/types/src/capabilities/automation-templates.d.ts.map +1 -1
- package/dist/types/src/capabilities/companion-chat-provisioner.d.ts +1 -1
- package/dist/types/src/capabilities/companion-chat-provisioner.d.ts.map +1 -1
- package/dist/types/src/capabilities/{integration-provider.d.ts → connector.d.ts} +2 -2
- package/dist/types/src/capabilities/connector.d.ts.map +1 -0
- package/dist/types/src/capabilities/create-object.d.ts +1 -27
- package/dist/types/src/capabilities/create-object.d.ts.map +1 -1
- package/dist/types/src/capabilities/index.d.ts +3 -2
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/markdown-extension.d.ts +1 -1
- package/dist/types/src/capabilities/migrations.d.ts +1 -2
- package/dist/types/src/capabilities/migrations.d.ts.map +1 -1
- package/dist/types/src/capabilities/navigation-resolver.d.ts +5 -0
- package/dist/types/src/capabilities/navigation-resolver.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface.d.ts +1 -1
- package/dist/types/src/capabilities/settings.d.ts +1 -2
- package/dist/types/src/capabilities/settings.d.ts.map +1 -1
- package/dist/types/src/capabilities/skill-definition.d.ts +5 -0
- package/dist/types/src/capabilities/skill-definition.d.ts.map +1 -0
- package/dist/types/src/capabilities/state.d.ts +1 -17
- package/dist/types/src/capabilities/state.d.ts.map +1 -1
- package/dist/types/src/capabilities/toolkit.d.ts +1 -2
- package/dist/types/src/capabilities/toolkit.d.ts.map +1 -1
- package/dist/types/src/components/AgentProperties/AgentProperties.stories.d.ts.map +1 -1
- package/dist/types/src/components/Chat/Chat.d.ts +4 -5
- package/dist/types/src/components/Chat/Chat.d.ts.map +1 -1
- package/dist/types/src/components/Chat/events.d.ts +0 -4
- package/dist/types/src/components/Chat/events.d.ts.map +1 -1
- package/dist/types/src/components/ChatPrompt/ChatActions.d.ts +2 -2
- package/dist/types/src/components/ChatPrompt/ChatActions.d.ts.map +1 -1
- package/dist/types/src/components/ChatPrompt/ChatOptions.d.ts.map +1 -1
- package/dist/types/src/components/ChatPrompt/ChatOptions.stories.d.ts +2 -2
- package/dist/types/src/components/ChatPrompt/ChatOptions.stories.d.ts.map +1 -1
- package/dist/types/src/components/ChatPrompt/ChatPrompt.d.ts +5 -5
- package/dist/types/src/components/ChatPrompt/ChatPrompt.d.ts.map +1 -1
- package/dist/types/src/components/ChatPrompt/useChatVoiceInput.d.ts +9 -0
- package/dist/types/src/components/ChatPrompt/useChatVoiceInput.d.ts.map +1 -0
- package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts +4 -4
- package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts.map +1 -1
- package/dist/types/src/components/ChatThread/MarkdownStream.stories.d.ts +2 -2
- package/dist/types/src/components/ChatThread/MarkdownStream.stories.d.ts.map +1 -1
- package/dist/types/src/components/ChatThread/registry.d.ts.map +1 -1
- package/dist/types/src/components/ChatThread/widgets/ReasoningWidget.stories.d.ts +2 -2
- package/dist/types/src/components/ChatThread/widgets/ReasoningWidget.stories.d.ts.map +1 -1
- package/dist/types/src/components/ChatThread/widgets/SurfaceWidget.d.ts +11 -0
- package/dist/types/src/components/ChatThread/widgets/SurfaceWidget.d.ts.map +1 -0
- package/dist/types/src/components/ChatThread/widgets/index.d.ts +1 -0
- package/dist/types/src/components/ChatThread/widgets/index.d.ts.map +1 -1
- package/dist/types/src/components/ProcessTree/ProcessTree.d.ts.map +1 -1
- package/dist/types/src/components/TaskList/TaskList.stories.d.ts +2 -2
- package/dist/types/src/components/TaskList/TaskList.stories.d.ts.map +1 -1
- package/dist/types/src/components/Toolbox/Toolbox.d.ts +3 -3
- package/dist/types/src/components/Toolbox/Toolbox.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +0 -4
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/constants.d.ts +1 -1
- package/dist/types/src/constants.d.ts.map +1 -1
- package/dist/types/src/containers/AgentArticle/AgentArticle.stories.d.ts +2 -2
- package/dist/types/src/containers/AgentArticle/AgentArticle.stories.d.ts.map +1 -1
- package/dist/types/src/{components → containers}/AssistantSettings/AssistantSettings.d.ts +1 -1
- package/dist/types/src/containers/AssistantSettings/AssistantSettings.d.ts.map +1 -0
- package/dist/types/src/{components → containers}/AssistantSettings/AssistantSettings.stories.d.ts.map +1 -1
- package/dist/types/src/containers/AssistantSettings/OllamaModels.d.ts +12 -0
- package/dist/types/src/containers/AssistantSettings/OllamaModels.d.ts.map +1 -0
- package/dist/types/src/{components/TemplateEditor/TemplateEditor.stories.d.ts → containers/AssistantSettings/OllamaModels.stories.d.ts} +9 -7
- package/dist/types/src/containers/AssistantSettings/OllamaModels.stories.d.ts.map +1 -0
- package/dist/types/src/{components → containers}/AssistantSettings/index.d.ts.map +1 -1
- package/dist/types/src/containers/ChatArticle/ChatArticle.d.ts +2 -9
- package/dist/types/src/containers/ChatArticle/ChatArticle.d.ts.map +1 -1
- package/dist/types/src/containers/ChatCompanion/ChatCompanion.d.ts +3 -10
- package/dist/types/src/containers/ChatCompanion/ChatCompanion.d.ts.map +1 -1
- package/dist/types/src/containers/ChatDialog/ChatDialog.d.ts.map +1 -1
- package/dist/types/src/containers/IntegrationPrompt/IntegrationPrompt.d.ts +13 -0
- package/dist/types/src/containers/IntegrationPrompt/IntegrationPrompt.d.ts.map +1 -0
- package/dist/types/src/containers/IntegrationPrompt/index.d.ts +2 -0
- package/dist/types/src/{components/RoutineProperties → containers/IntegrationPrompt}/index.d.ts.map +1 -1
- package/dist/types/src/containers/SpaceHomePrompt/SpaceHomePrompt.d.ts.map +1 -1
- package/dist/types/src/containers/SpaceHomeSuggestions/SpaceHomeSuggestions.d.ts +1 -1
- package/dist/types/src/containers/SpaceHomeSuggestions/SpaceHomeSuggestions.d.ts.map +1 -1
- package/dist/types/src/containers/TracePanel/TracePanel.stories.d.ts.map +1 -1
- package/dist/types/src/containers/TracePanel/testing/simulated-agent.d.ts +1 -1
- package/dist/types/src/containers/TracePanel/testing/simulated-agent.d.ts.map +1 -1
- package/dist/types/src/containers/TriggerStatus/TriggerStatus.d.ts.map +1 -1
- package/dist/types/src/containers/index.d.ts +2 -3
- package/dist/types/src/containers/index.d.ts.map +1 -1
- package/dist/types/src/execution-graph/execution-graph.d.ts +2 -1
- package/dist/types/src/execution-graph/execution-graph.d.ts.map +1 -1
- package/dist/types/src/execution-graph/index.d.ts +3 -3
- package/dist/types/src/execution-graph/index.d.ts.map +1 -1
- package/dist/types/src/execution-graph/span-tree.d.ts +13 -0
- package/dist/types/src/execution-graph/span-tree.d.ts.map +1 -1
- package/dist/types/src/extensions/index.d.ts +1 -1
- package/dist/types/src/extensions/index.d.ts.map +1 -1
- package/dist/types/src/extensions/prompt-extension.d.ts.map +1 -1
- package/dist/types/src/hooks/index.d.ts +2 -2
- package/dist/types/src/hooks/index.d.ts.map +1 -1
- package/dist/types/src/hooks/useChatProcessor.d.ts.map +1 -1
- package/dist/types/src/hooks/useContextBinder.d.ts.map +1 -1
- package/dist/types/src/hooks/useHomeSuggestions.d.ts +8 -0
- package/dist/types/src/hooks/useHomeSuggestions.d.ts.map +1 -0
- package/dist/types/src/hooks/usePresets.d.ts +6 -2
- package/dist/types/src/hooks/usePresets.d.ts.map +1 -1
- package/dist/types/src/hooks/useSkillRegistry.d.ts +21 -0
- package/dist/types/src/hooks/useSkillRegistry.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +1 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts +4 -0
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/operations/create-chat.d.ts.map +1 -1
- package/dist/types/src/operations/fork-chat.d.ts.map +1 -1
- package/dist/types/src/operations/generate-home-suggestions.d.ts +5 -0
- package/dist/types/src/operations/generate-home-suggestions.d.ts.map +1 -0
- package/dist/types/src/operations/generate-home-suggestions.test.d.ts +2 -0
- package/dist/types/src/operations/generate-home-suggestions.test.d.ts.map +1 -0
- package/dist/types/src/operations/index.d.ts.map +1 -1
- package/dist/types/src/operations/resolve-navigation-targets.d.ts +3 -15
- package/dist/types/src/operations/resolve-navigation-targets.d.ts.map +1 -1
- package/dist/types/src/operations/run-prompt-in-new-chat.d.ts +2 -2
- package/dist/types/src/operations/run-prompt-in-new-chat.d.ts.map +1 -1
- package/dist/types/src/paths.d.ts +1 -1
- package/dist/types/src/paths.d.ts.map +1 -1
- package/dist/types/src/plugin.workerd.d.ts +2 -0
- package/dist/types/src/plugin.workerd.d.ts.map +1 -0
- package/dist/types/src/processor/presets.d.ts +20 -9
- package/dist/types/src/processor/presets.d.ts.map +1 -1
- package/dist/types/src/processor/processor.d.ts +10 -209
- package/dist/types/src/processor/processor.d.ts.map +1 -1
- package/dist/types/src/skills/assistant/index.d.ts +2 -0
- package/dist/types/src/skills/assistant/index.d.ts.map +1 -0
- package/dist/types/src/skills/assistant/skill.d.ts +4 -0
- package/dist/types/src/skills/assistant/skill.d.ts.map +1 -0
- package/dist/types/src/skills/assistant/skill.node.test.d.ts +2 -0
- package/dist/types/src/skills/assistant/skill.node.test.d.ts.map +1 -0
- package/dist/types/src/skills/index.d.ts.map +1 -0
- package/dist/types/src/templates/daily-digest.d.ts +2 -2
- package/dist/types/src/templates/daily-digest.d.ts.map +1 -1
- package/dist/types/src/templates/index.d.ts +3 -3
- package/dist/types/src/templates/index.d.ts.map +1 -1
- package/dist/types/src/templates/research-brief.d.ts +2 -2
- package/dist/types/src/templates/research-brief.d.ts.map +1 -1
- package/dist/types/src/templates/routine-templates.test.d.ts +2 -0
- package/dist/types/src/templates/routine-templates.test.d.ts.map +1 -0
- package/dist/types/src/templates/scaffold.d.ts +9 -9
- package/dist/types/src/templates/scaffold.d.ts.map +1 -1
- package/dist/types/src/testing/test-generator.d.ts +1 -1
- package/dist/types/src/testing/test-generator.d.ts.map +1 -1
- package/dist/types/src/testing/test-sequence.d.ts +1 -8
- package/dist/types/src/testing/test-sequence.d.ts.map +1 -1
- package/dist/types/src/testing/test-trace.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/Assistant.d.ts +5 -12
- package/dist/types/src/types/Assistant.d.ts.map +1 -1
- package/dist/types/src/types/AssistantCapabilities.d.ts +21 -0
- package/dist/types/src/types/AssistantCapabilities.d.ts.map +1 -1
- package/dist/types/src/types/AssistantOperation.d.ts +17 -110
- package/dist/types/src/types/AssistantOperation.d.ts.map +1 -1
- package/dist/types/src/types/ChatSurface.d.ts +12 -0
- package/dist/types/src/types/ChatSurface.d.ts.map +1 -0
- package/dist/types/src/types/Ollama.d.ts +44 -0
- package/dist/types/src/types/Ollama.d.ts.map +1 -0
- package/dist/types/src/types/Settings.d.ts +5 -4
- package/dist/types/src/types/Settings.d.ts.map +1 -1
- package/dist/types/src/types/index.d.ts +2 -0
- package/dist/types/src/types/index.d.ts.map +1 -1
- package/dist/types/src/types/service.d.ts +4 -3
- package/dist/types/src/types/service.d.ts.map +1 -1
- package/dist/types/src/util/suggestions.d.ts +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/dx.config.ts +2 -2
- package/package.json +102 -90
- package/src/AssistantPlugin.conversations.json +1 -1
- package/src/AssistantPlugin.node.ts +5 -5
- package/src/AssistantPlugin.test.ts +26 -40
- package/src/AssistantPlugin.ts +12 -10
- package/src/AssistantPlugin.workerd.ts +15 -6
- package/src/capabilities/agent-hydrator.ts +1 -2
- package/src/capabilities/agent-service.ts +5 -7
- package/src/capabilities/ai-context.ts +7 -32
- package/src/capabilities/ai-service.ts +3 -2
- package/src/capabilities/app-graph-builder.ts +38 -18
- package/src/capabilities/automation-templates.ts +3 -3
- package/src/capabilities/companion-chat-provisioner.ts +22 -6
- package/src/capabilities/{integration-provider.ts → connector.ts} +7 -12
- package/src/capabilities/create-object.ts +9 -26
- package/src/capabilities/index.ts +3 -5
- package/src/capabilities/markdown-extension.ts +2 -3
- package/src/capabilities/navigation-resolver.ts +20 -0
- package/src/capabilities/react-surface.tsx +21 -33
- package/src/capabilities/skill-definition.ts +72 -0
- package/src/capabilities/state.ts +7 -0
- package/src/components/AgentProperties/AgentProperties.stories.tsx +1 -2
- package/src/components/Chat/Chat.tsx +28 -10
- package/src/components/Chat/events.ts +0 -6
- package/src/components/ChatPrompt/ChatActions.tsx +181 -18
- package/src/components/ChatPrompt/ChatOptions.stories.tsx +3 -3
- package/src/components/ChatPrompt/ChatOptions.tsx +17 -21
- package/src/components/ChatPrompt/ChatPrompt.tsx +30 -46
- package/src/components/ChatPrompt/useChatVoiceInput.ts +103 -0
- package/src/components/ChatThread/ChatThread.stories.tsx +7 -16
- package/src/components/ChatThread/MarkdownStream.stories.tsx +3 -3
- package/src/components/ChatThread/registry.tsx +43 -17
- package/src/components/ChatThread/widgets/ReasoningWidget.stories.tsx +2 -2
- package/src/components/ChatThread/widgets/SurfaceWidget.tsx +41 -0
- package/src/components/ChatThread/widgets/index.ts +1 -0
- package/src/components/ProcessTree/ProcessTree.tsx +2 -10
- package/src/components/TaskList/TaskList.stories.tsx +2 -2
- package/src/components/TaskList/TaskList.tsx +2 -2
- package/src/components/Toolbox/Toolbox.tsx +11 -11
- package/src/components/index.ts +0 -6
- package/src/constants.ts +1 -1
- package/src/containers/AgentArticle/AgentArticle.stories.tsx +8 -9
- package/src/containers/AgentArticle/AgentArticle.tsx +1 -1
- package/src/{components → containers}/AssistantSettings/AssistantSettings.stories.tsx +3 -2
- package/src/containers/AssistantSettings/AssistantSettings.tsx +90 -0
- package/src/containers/AssistantSettings/OllamaModels.stories.tsx +108 -0
- package/src/containers/AssistantSettings/OllamaModels.tsx +255 -0
- package/src/containers/ChatArticle/ChatArticle.stories.tsx +3 -3
- package/src/containers/ChatArticle/ChatArticle.tsx +8 -19
- package/src/containers/ChatCompanion/ChatCompanion.tsx +26 -26
- package/src/containers/ChatDialog/ChatDialog.tsx +5 -4
- package/src/containers/IntegrationPrompt/IntegrationPrompt.tsx +79 -0
- package/src/containers/IntegrationPrompt/index.ts +5 -0
- package/src/containers/SpaceHomePrompt/SpaceHomePrompt.tsx +8 -6
- package/src/containers/SpaceHomeSuggestions/SpaceHomeSuggestions.tsx +46 -32
- package/src/containers/TracePanel/TracePanel.stories.tsx +89 -47
- package/src/containers/TracePanel/TracePanel.tsx +13 -8
- package/src/containers/TracePanel/dxn-extractor.test.ts +2 -2
- package/src/containers/TriggerStatus/TriggerStatus.tsx +8 -4
- package/src/containers/index.ts +2 -3
- package/src/execution-graph/SPEC.md +1 -1
- package/src/execution-graph/execution-graph.test.ts +213 -25
- package/src/execution-graph/execution-graph.ts +209 -72
- package/src/execution-graph/index.ts +8 -8
- package/src/execution-graph/span-tree.test.ts +33 -1
- package/src/execution-graph/span-tree.ts +43 -2
- package/src/execution-graph/sub-agent-delegation.test.ts +19 -19
- package/src/extensions/index.ts +1 -1
- package/src/extensions/prompt-extension.ts +1 -1
- package/src/feed-logger.ts +4 -4
- package/src/functions/services.test.ts +4 -4
- package/src/hooks/index.ts +2 -2
- package/src/hooks/useChatProcessor.ts +12 -16
- package/src/hooks/useContextBinder.ts +2 -4
- package/src/hooks/useDebug.ts +2 -2
- package/src/hooks/useHomeSuggestions.ts +55 -0
- package/src/hooks/usePresets.ts +80 -11
- package/src/hooks/useProcessEphemeralStatus.ts +1 -1
- package/src/hooks/useReferencesProvider.ts +1 -1
- package/src/hooks/useSkillRegistry.ts +125 -0
- package/src/index.ts +1 -1
- package/src/operations/create-chat.ts +11 -12
- package/src/operations/fork-chat.ts +14 -19
- package/src/operations/generate-home-suggestions.test.ts +103 -0
- package/src/operations/generate-home-suggestions.ts +116 -0
- package/src/operations/index.ts +1 -0
- package/src/operations/prompt.node.test.ts +14 -17
- package/src/operations/resolve-navigation-targets.ts +32 -19
- package/src/operations/run-prompt-in-new-chat.ts +30 -33
- package/src/operations/update-chat-name.ts +2 -2
- package/src/paths.ts +4 -2
- package/src/plugin.workerd.ts +5 -0
- package/src/processor/presets.ts +38 -61
- package/src/processor/processor.node.test.ts +1 -1
- package/src/processor/processor.ts +34 -20
- package/src/skills/assistant/index.ts +5 -0
- package/src/{blueprints/assistant/blueprint.node.test.ts → skills/assistant/skill.node.test.ts} +8 -8
- package/src/{blueprints/assistant/blueprint.ts → skills/assistant/skill.ts} +9 -9
- package/src/templates/daily-digest.ts +10 -12
- package/src/templates/index.ts +3 -3
- package/src/templates/research-brief.ts +15 -13
- package/src/templates/routine-templates.test.ts +55 -0
- package/src/templates/scaffold.ts +22 -57
- package/src/testing/data/trace-timeline-multiple.dx.json +1 -1
- package/src/testing/data/trace-timeline-remote.dx.json +1 -1
- package/src/testing/data/trace-timeline.dx.json +3430 -1092
- package/src/testing/test-generator.test.ts +26 -22
- package/src/testing/test-generator.ts +4 -8
- package/src/testing/test-trace.ts +2 -1
- package/src/testing/trace-timeline.node.test.ts +14 -14
- package/src/translations.ts +68 -33
- package/src/types/Assistant.ts +3 -1
- package/src/types/AssistantCapabilities.ts +21 -0
- package/src/types/AssistantOperation.ts +21 -32
- package/src/types/ChatSurface.ts +16 -0
- package/src/types/Ollama.ts +59 -0
- package/src/types/Settings.ts +12 -10
- package/src/types/index.ts +3 -0
- package/src/types/service.ts +14 -14
- package/src/util/suggestions.ts +1 -1
- package/dist/lib/neutral/AgentArticle-2BEPWUMN.mjs.map +0 -7
- package/dist/lib/neutral/AssistantSettings-7ALY4BMS.mjs +0 -40
- package/dist/lib/neutral/AssistantSettings-7ALY4BMS.mjs.map +0 -7
- package/dist/lib/neutral/BlueprintArticle-ZBOZNZM7.mjs +0 -27
- package/dist/lib/neutral/BlueprintArticle-ZBOZNZM7.mjs.map +0 -7
- package/dist/lib/neutral/ChatCompanion-YHC43RYQ.mjs.map +0 -7
- package/dist/lib/neutral/ChatDialog-YZDZLIQA.mjs.map +0 -7
- package/dist/lib/neutral/RoutineArticle-FK5BXQN5.mjs +0 -119
- package/dist/lib/neutral/RoutineArticle-FK5BXQN5.mjs.map +0 -7
- package/dist/lib/neutral/RoutineList-SO5ETHNT.mjs +0 -48
- package/dist/lib/neutral/RoutineList-SO5ETHNT.mjs.map +0 -7
- package/dist/lib/neutral/RoutineProperties-FISLMW2R.mjs +0 -17
- package/dist/lib/neutral/RoutineProperties-FISLMW2R.mjs.map +0 -7
- package/dist/lib/neutral/SpaceHomePrompt-HTWQKLGI.mjs.map +0 -7
- package/dist/lib/neutral/SpaceHomeSuggestions-6G4E7GNJ.mjs +0 -50
- package/dist/lib/neutral/SpaceHomeSuggestions-6G4E7GNJ.mjs.map +0 -7
- package/dist/lib/neutral/TriggerStatus-RBOHHDOK.mjs.map +0 -7
- package/dist/lib/neutral/agent-hydrator-PJBYVMBW.mjs.map +0 -7
- package/dist/lib/neutral/agent-service-WV5CSHAG.mjs.map +0 -7
- package/dist/lib/neutral/ai-context-7WRHWYXY.mjs +0 -42
- package/dist/lib/neutral/ai-context-7WRHWYXY.mjs.map +0 -7
- package/dist/lib/neutral/ai-service-AADUIKBY.mjs.map +0 -7
- package/dist/lib/neutral/app-graph-builder-PTSRZXRN.mjs.map +0 -7
- package/dist/lib/neutral/automation-templates-M2XQWGR6.mjs +0 -115
- package/dist/lib/neutral/automation-templates-M2XQWGR6.mjs.map +0 -7
- package/dist/lib/neutral/blueprint-definition-2XPYI35X.mjs +0 -40
- package/dist/lib/neutral/blueprint-definition-2XPYI35X.mjs.map +0 -7
- package/dist/lib/neutral/blueprints/index.mjs +0 -8
- package/dist/lib/neutral/chunk-54W7N6M6.mjs.map +0 -7
- package/dist/lib/neutral/chunk-5H6UJHLF.mjs.map +0 -7
- package/dist/lib/neutral/chunk-5KB2WRI2.mjs.map +0 -7
- package/dist/lib/neutral/chunk-7FQT4XMI.mjs +0 -8
- package/dist/lib/neutral/chunk-H77JTXAN.mjs.map +0 -7
- package/dist/lib/neutral/chunk-IQZJ5TTM.mjs +0 -130
- package/dist/lib/neutral/chunk-IQZJ5TTM.mjs.map +0 -7
- package/dist/lib/neutral/chunk-KLYLW4WH.mjs.map +0 -7
- package/dist/lib/neutral/companion-chat-provisioner-YZZ73P6E.mjs.map +0 -7
- package/dist/lib/neutral/create-chat-Z3FNA6OJ.mjs.map +0 -7
- package/dist/lib/neutral/create-object-BJUDDKQQ.mjs.map +0 -7
- package/dist/lib/neutral/fork-chat-UYXYT6BT.mjs.map +0 -7
- package/dist/lib/neutral/integration-provider-RBD3AFJU.mjs.map +0 -7
- package/dist/lib/neutral/markdown-extension-IJ5RQMQ4.mjs.map +0 -7
- package/dist/lib/neutral/react-surface-ES7UHZ65.mjs.map +0 -7
- package/dist/lib/neutral/resolve-navigation-targets-ZHIMMH7L.mjs +0 -22
- package/dist/lib/neutral/resolve-navigation-targets-ZHIMMH7L.mjs.map +0 -7
- package/dist/lib/neutral/run-prompt-in-new-chat-NIAGCKQV.mjs.map +0 -7
- package/dist/types/src/blueprints/assistant/blueprint.d.ts +0 -4
- package/dist/types/src/blueprints/assistant/blueprint.d.ts.map +0 -1
- package/dist/types/src/blueprints/assistant/blueprint.node.test.d.ts +0 -2
- package/dist/types/src/blueprints/assistant/blueprint.node.test.d.ts.map +0 -1
- package/dist/types/src/blueprints/assistant/index.d.ts +0 -2
- package/dist/types/src/blueprints/assistant/index.d.ts.map +0 -1
- package/dist/types/src/blueprints/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/blueprint-definition.d.ts +0 -5
- package/dist/types/src/capabilities/blueprint-definition.d.ts.map +0 -1
- package/dist/types/src/capabilities/integration-provider.d.ts.map +0 -1
- package/dist/types/src/components/AssistantSettings/AssistantSettings.d.ts.map +0 -1
- package/dist/types/src/components/RoutineProperties/RoutineProperties.d.ts +0 -7
- package/dist/types/src/components/RoutineProperties/RoutineProperties.d.ts.map +0 -1
- package/dist/types/src/components/RoutineProperties/RoutineProperties.stories.d.ts +0 -15
- package/dist/types/src/components/RoutineProperties/RoutineProperties.stories.d.ts.map +0 -1
- package/dist/types/src/components/RoutineProperties/index.d.ts +0 -2
- package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts +0 -13
- package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts.map +0 -1
- package/dist/types/src/components/TemplateEditor/TemplateEditor.stories.d.ts.map +0 -1
- package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts +0 -21
- package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts.map +0 -1
- package/dist/types/src/components/TemplateEditor/TemplateForm.stories.d.ts +0 -16
- package/dist/types/src/components/TemplateEditor/TemplateForm.stories.d.ts.map +0 -1
- package/dist/types/src/components/TemplateEditor/extensions/handlebars-extension.d.ts +0 -12
- package/dist/types/src/components/TemplateEditor/extensions/handlebars-extension.d.ts.map +0 -1
- package/dist/types/src/components/TemplateEditor/extensions/index.d.ts +0 -3
- package/dist/types/src/components/TemplateEditor/extensions/index.d.ts.map +0 -1
- package/dist/types/src/components/TemplateEditor/extensions/xml-extension.d.ts +0 -8
- package/dist/types/src/components/TemplateEditor/extensions/xml-extension.d.ts.map +0 -1
- package/dist/types/src/components/TemplateEditor/index.d.ts +0 -2
- package/dist/types/src/components/TemplateEditor/index.d.ts.map +0 -1
- package/dist/types/src/components/TemplateEditor/types.d.ts +0 -18
- package/dist/types/src/components/TemplateEditor/types.d.ts.map +0 -1
- package/dist/types/src/containers/BlueprintArticle/BlueprintArticle.d.ts +0 -6
- package/dist/types/src/containers/BlueprintArticle/BlueprintArticle.d.ts.map +0 -1
- package/dist/types/src/containers/BlueprintArticle/index.d.ts +0 -2
- package/dist/types/src/containers/BlueprintArticle/index.d.ts.map +0 -1
- package/dist/types/src/containers/RoutineArticle/RoutineArticle.d.ts +0 -6
- package/dist/types/src/containers/RoutineArticle/RoutineArticle.d.ts.map +0 -1
- package/dist/types/src/containers/RoutineArticle/RoutineArticle.stories.d.ts +0 -15
- package/dist/types/src/containers/RoutineArticle/RoutineArticle.stories.d.ts.map +0 -1
- package/dist/types/src/containers/RoutineArticle/index.d.ts +0 -2
- package/dist/types/src/containers/RoutineArticle/index.d.ts.map +0 -1
- package/dist/types/src/containers/RoutineList/RoutineList.d.ts +0 -6
- package/dist/types/src/containers/RoutineList/RoutineList.d.ts.map +0 -1
- package/dist/types/src/containers/RoutineList/RoutineList.stories.d.ts +0 -21
- package/dist/types/src/containers/RoutineList/RoutineList.stories.d.ts.map +0 -1
- package/dist/types/src/containers/RoutineList/index.d.ts +0 -2
- package/dist/types/src/containers/RoutineList/index.d.ts.map +0 -1
- package/dist/types/src/hooks/useBlueprintRegistry.d.ts +0 -66
- package/dist/types/src/hooks/useBlueprintRegistry.d.ts.map +0 -1
- package/dist/types/src/hooks/useOnline.d.ts +0 -3
- package/dist/types/src/hooks/useOnline.d.ts.map +0 -1
- package/dist/types/src/templates/automation-templates.test.d.ts +0 -2
- package/dist/types/src/templates/automation-templates.test.d.ts.map +0 -1
- package/src/blueprints/assistant/index.ts +0 -5
- package/src/capabilities/blueprint-definition.ts +0 -67
- package/src/components/AssistantSettings/AssistantSettings.tsx +0 -43
- package/src/components/RoutineProperties/RoutineProperties.stories.tsx +0 -59
- package/src/components/RoutineProperties/RoutineProperties.tsx +0 -23
- package/src/components/RoutineProperties/index.ts +0 -5
- package/src/components/TemplateEditor/TemplateEditor.stories.tsx +0 -95
- package/src/components/TemplateEditor/TemplateEditor.tsx +0 -80
- package/src/components/TemplateEditor/TemplateForm.stories.tsx +0 -76
- package/src/components/TemplateEditor/TemplateForm.tsx +0 -204
- package/src/components/TemplateEditor/extensions/handlebars-extension.ts +0 -274
- package/src/components/TemplateEditor/extensions/index.ts +0 -6
- package/src/components/TemplateEditor/extensions/xml-extension.ts +0 -64
- package/src/components/TemplateEditor/index.ts +0 -5
- package/src/components/TemplateEditor/types.tsx +0 -28
- package/src/containers/BlueprintArticle/BlueprintArticle.tsx +0 -29
- package/src/containers/BlueprintArticle/index.ts +0 -5
- package/src/containers/RoutineArticle/RoutineArticle.stories.tsx +0 -75
- package/src/containers/RoutineArticle/RoutineArticle.tsx +0 -109
- package/src/containers/RoutineArticle/index.ts +0 -5
- package/src/containers/RoutineList/RoutineList.stories.tsx +0 -130
- package/src/containers/RoutineList/RoutineList.tsx +0 -50
- package/src/containers/RoutineList/index.ts +0 -5
- package/src/hooks/useBlueprintRegistry.ts +0 -125
- package/src/hooks/useOnline.ts +0 -10
- package/src/templates/automation-templates.test.ts +0 -66
- /package/dist/lib/neutral/{ChatArticle-KT46SUFU.mjs.map → ChatArticle-OO7GGEFW.mjs.map} +0 -0
- /package/dist/lib/neutral/{TracePanel-T552TAOH.mjs.map → TracePanel-JKNWADJ4.mjs.map} +0 -0
- /package/dist/lib/neutral/{edge-model-resolver-BBVOJBGJ.mjs.map → edge-model-resolver-WDJWDZTT.mjs.map} +0 -0
- /package/dist/lib/neutral/{blueprints → extensions}/index.mjs.map +0 -0
- /package/dist/types/src/{components → containers}/AssistantSettings/AssistantSettings.stories.d.ts +0 -0
- /package/dist/types/src/{components → containers}/AssistantSettings/index.d.ts +0 -0
- /package/dist/types/src/{blueprints → skills}/index.d.ts +0 -0
- /package/src/{components → containers}/AssistantSettings/index.ts +0 -0
- /package/src/{blueprints → skills}/index.ts +0 -0
package/src/types/Settings.ts
CHANGED
|
@@ -6,15 +6,15 @@
|
|
|
6
6
|
|
|
7
7
|
import * as Schema from 'effect/Schema';
|
|
8
8
|
|
|
9
|
+
import { Provider } from '@dxos/ai';
|
|
9
10
|
import { SchemaEx } from '@dxos/effect';
|
|
11
|
+
import { DXN } from '@dxos/keys';
|
|
10
12
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
);
|
|
16
|
-
export type ModelProvider = Schema.Schema.Type<typeof ModelProvider>;
|
|
17
|
-
export const ModelProviders = SchemaEx.getLiteralValues(ModelProvider);
|
|
13
|
+
// A provider id is an open DXN (third-party providers define their own), validated as a DXN rather
|
|
14
|
+
// than restricted to a closed literal union. The known providers come from the @dxos/ai registry.
|
|
15
|
+
export const ModelProvider = DXN.Schema;
|
|
16
|
+
export type ModelProvider = DXN.DXN;
|
|
17
|
+
export const ModelProviders: readonly DXN.DXN[] = Provider.all.map((provider) => provider.id);
|
|
18
18
|
|
|
19
19
|
export const ChatView = Schema.Union(
|
|
20
20
|
Schema.Literal('normal').annotations({ title: 'Normal' }),
|
|
@@ -33,10 +33,12 @@ export const ModelDefaults = Schema.mutable(
|
|
|
33
33
|
description: 'Choose the remote language model used for AI requests.',
|
|
34
34
|
}),
|
|
35
35
|
),
|
|
36
|
+
// `built-in` (bundled sidecar) and `ollama` (external) share the `ollama` model source, so they
|
|
37
|
+
// share this single default key.
|
|
36
38
|
ollama: Schema.optional(
|
|
37
39
|
Schema.String.annotations({
|
|
38
|
-
title: '
|
|
39
|
-
description: 'Choose the locally hosted
|
|
40
|
+
title: 'Local language model',
|
|
41
|
+
description: 'Choose the locally hosted model used for AI requests.',
|
|
40
42
|
}),
|
|
41
43
|
),
|
|
42
44
|
lmstudio: Schema.optional(
|
|
@@ -70,7 +72,7 @@ export const Settings = Schema.mutable(
|
|
|
70
72
|
description: 'Select which language model service to use for AI responses.',
|
|
71
73
|
}),
|
|
72
74
|
),
|
|
73
|
-
modelDefaults: Schema.optional(ModelDefaults),
|
|
75
|
+
modelDefaults: Schema.optional(ModelDefaults.annotations({ title: 'Model defaults' })),
|
|
74
76
|
tracePanelDebug: Schema.optional(
|
|
75
77
|
Schema.Boolean.annotations({
|
|
76
78
|
title: 'Trace panel debug',
|
package/src/types/index.ts
CHANGED
|
@@ -8,10 +8,13 @@ import type { AiService } from '@dxos/ai';
|
|
|
8
8
|
// Re-export Chat type from assistant-toolkit for public API type declarations.
|
|
9
9
|
export type { Chat as ChatType } from '@dxos/assistant-toolkit';
|
|
10
10
|
|
|
11
|
+
export * from './ChatSurface';
|
|
12
|
+
|
|
11
13
|
export * as Assistant from './Assistant';
|
|
12
14
|
export * as AssistantOperation from './AssistantOperation';
|
|
13
15
|
export * as AssistantCapabilities from './AssistantCapabilities';
|
|
14
16
|
export * as AssistantEvents from './AssistantEvents';
|
|
17
|
+
export * as Ollama from './Ollama';
|
|
15
18
|
|
|
16
19
|
// TODO(wittjosiah): Namespace.
|
|
17
20
|
export * from './preset';
|
package/src/types/service.ts
CHANGED
|
@@ -73,20 +73,20 @@ const ServiceInterface = Schema.Union(
|
|
|
73
73
|
|
|
74
74
|
export type ServiceInterface = Schema.Schema.Type<typeof ServiceInterface>;
|
|
75
75
|
|
|
76
|
-
export
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
76
|
+
export class ServiceType extends Type.makeObject<ServiceType>(DXN.make('org.dxos.type.service', '0.1.0'))(
|
|
77
|
+
Schema.Struct({
|
|
78
|
+
serviceId: Schema.String,
|
|
79
|
+
name: Schema.optional(Schema.String),
|
|
80
|
+
description: Schema.optional(Schema.String),
|
|
81
|
+
category: Schema.optional(Schema.String),
|
|
82
|
+
enabled: Schema.optional(Schema.Boolean),
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Entries exposed: functions, workflows, and APIs.
|
|
86
|
+
*/
|
|
87
|
+
interfaces: Schema.optional(Schema.Array(ServiceInterface)),
|
|
88
|
+
}),
|
|
89
|
+
) {}
|
|
90
90
|
|
|
91
91
|
//
|
|
92
92
|
// Service Registry
|
package/src/util/suggestions.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
//
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
|
-
* Extract starter-prompt suggestions from a
|
|
6
|
+
* Extract starter-prompt suggestions from a skill's instructions markdown.
|
|
7
7
|
*
|
|
8
8
|
* Looks for the first `## Suggested starting prompts` heading (case-insensitive) and returns the
|
|
9
9
|
* bullet-list items immediately following it. Items wrapped in single or double quotes have their
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/containers/AgentArticle/AgentArticle.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2026 DXOS.org\n//\n\nimport { Atom, useAtomValue } from '@effect-atom/atom-react';\nimport * as Effect from 'effect/Effect';\nimport * as Option from 'effect/Option';\nimport React, { forwardRef, useCallback, useMemo, useState } from 'react';\n\nimport { Surface, useSpaceCallback } from '@dxos/app-framework/ui';\nimport { AppSurface, useObjectMenuItems } from '@dxos/app-toolkit/ui';\nimport { Agent } from '@dxos/assistant-toolkit';\nimport { Database, Feed, Filter, Obj, Query, Ref } from '@dxos/echo';\nimport { useQuery } from '@dxos/react-client/echo';\nimport { Card, Icon, IconButton, Message, Panel, ScrollArea, Toolbar, useTranslation } from '@dxos/react-ui';\nimport { composable } from '@dxos/react-ui';\nimport { Masonry } from '@dxos/react-ui-masonry';\nimport { Menu } from '@dxos/react-ui-menu';\nimport { Focus, Mosaic, type MosaicTileProps } from '@dxos/react-ui-mosaic';\nimport { isNonNullable } from '@dxos/util';\n\nimport { meta } from '#meta';\n\ntype Tab = 'artifacts' | 'inputs';\n\nexport type AgentArticleProps = AppSurface.ObjectArticleProps<Agent.Agent>;\n\nexport const AgentArticle = ({ role, subject: agent }: AgentArticleProps) => {\n const { t } = useTranslation(meta.profile.key);\n const [tab, setTab] = useState<Tab>('artifacts');\n const [viewport, setViewport] = useState<HTMLElement | null>(null);\n\n const spaceId = Obj.getDatabase(agent)?.spaceId;\n // TODO(burdon): Clear input feed also.\n const resetHistory = useSpaceCallback(\n spaceId,\n [Feed.FeedService, Database.Service] as const,\n Effect.fnUntraced(function* () {\n yield* Agent.resetChatHistory(agent);\n if (!agent.feed) {\n const feed = yield* Database.add(Feed.make());\n Obj.update(agent, (agent) => {\n agent.feed = Ref.make(feed);\n });\n }\n }),\n [agent],\n );\n const handleResetHistory = useCallback(async () => {\n await resetHistory();\n }, [resetHistory]);\n\n const artifacts = useAtomValue(\n useMemo(\n () =>\n Obj.atom(agent).pipe((agent) =>\n Atom.make((get) => {\n return get(agent)\n .artifacts.map((artifact) => get(artifact.data.atom))\n .filter(isNonNullable);\n }),\n ),\n [agent],\n ),\n );\n\n const inputFeed = useAtomValue(\n Obj.atom(agent).pipe((_) =>\n Atom.make((get) =>\n Option.fromNullable(get(_).feed).pipe(\n Option.map((ref) => ref.atom),\n Option.map(get),\n Option.getOrUndefined,\n ),\n ),\n ),\n );\n\n const db = Obj.getDatabase(agent);\n const inputObjects = useQuery(\n db,\n inputFeed ? Query.select(Filter.everything()).from(inputFeed) : Query.select(Filter.nothing()),\n );\n\n return (\n <Panel.Root role={role}>\n <Panel.Toolbar asChild>\n <Toolbar.Root>\n <Toolbar.ToggleGroup type='single' value={tab} onValueChange={(value) => value && setTab(value as Tab)}>\n <Toolbar.ToggleGroupIconItem value='artifacts' label={t('artifacts.label')} icon='ph--cube--regular' />\n <Toolbar.ToggleGroupIconItem value='inputs' label={t('inputs.label')} icon='ph--queue--regular' />\n </Toolbar.ToggleGroup>\n <Toolbar.Separator />\n <Toolbar.IconButton\n icon='ph--trash--regular'\n label={t('reset-history.button')}\n onCanPlay={handleResetHistory}\n />\n </Toolbar.Root>\n </Panel.Toolbar>\n <Panel.Content className='dx-container flex flex-col'>\n {tab === 'artifacts' && (\n <>\n {artifacts.length === 0 && (\n <Message.Root classNames='m-2' valence='info'>\n <Message.Title>{t('project-empty-spec.message')}</Message.Title>\n <Message.Content>{t('project-empty-spec.description')}</Message.Content>\n </Message.Root>\n )}\n\n <Masonry.Root Tile={MasonryArtifactTile}>\n <Masonry.Content padding thin centered>\n <Masonry.Viewport items={artifacts} getId={(item: Obj.Unknown) => item.id} />\n </Masonry.Content>\n </Masonry.Root>\n </>\n )}\n\n {tab === 'inputs' && (\n <Mosaic.Container asChild withFocus autoScroll={viewport} classNames='dx-document'>\n <ScrollArea.Root orientation='vertical' padding thin centered>\n <ScrollArea.Viewport ref={setViewport}>\n <Mosaic.VirtualStack\n Tile={StackTile}\n classNames='gap-2'\n draggable={false}\n estimateSize={() => 160}\n gap={8}\n getId={(item: Obj.Unknown) => item.id}\n getScrollElement={() => viewport}\n items={inputObjects}\n />\n </ScrollArea.Viewport>\n </ScrollArea.Root>\n </Mosaic.Container>\n )}\n </Panel.Content>\n </Panel.Root>\n );\n};\n\nconst ArtifactTileCard = composable<HTMLDivElement, { data: Obj.Unknown }>(({ data, ...props }, forwardedRef) => {\n const objectMenuItems = useObjectMenuItems(data);\n const icon = Obj.getIcon(data)?.icon ?? 'ph--circle-dashed--regular';\n\n return (\n <Card.Root {...props} ref={forwardedRef} data-testid='board-item' fullWidth>\n <Card.Header>\n <Card.Block>\n <Icon icon={icon} />\n </Card.Block>\n <Card.Title>{Obj.getLabel(data, { fallback: 'typename' })}</Card.Title>\n {/* TODO(wittjosiah): Reconcile with Card.Menu. */}\n <Card.Block end>\n <Menu.Trigger asChild disabled={!objectMenuItems?.length}>\n <IconButton iconOnly variant='ghost' icon='ph--dots-three-vertical--regular' label='Actions' />\n </Menu.Trigger>\n <Menu.Content items={objectMenuItems} />\n </Card.Block>\n </Card.Header>\n <Card.Body>\n <Surface.Surface\n type={AppSurface.CardContent}\n limit={1}\n data={{ subject: data } satisfies AppSurface.ObjectCardData}\n />\n </Card.Body>\n </Card.Root>\n );\n});\n\nArtifactTileCard.displayName = 'ArtifactTileCard';\n\nconst MasonryArtifactTile = ({ data }: { data: Obj.Unknown; index: number }) => (\n <Menu.Root>\n <ArtifactTileCard data={data} />\n </Menu.Root>\n);\n\nconst StackTile = forwardRef<HTMLDivElement, MosaicTileProps<Obj.Unknown>>(\n ({ data, location, debug, current }, forwardedRef) => (\n <Menu.Root>\n <Mosaic.Tile asChild id={data.id} data={data} location={location} debug={debug}>\n <Focus.Item asChild current={current}>\n <ArtifactTileCard ref={forwardedRef} data={data} />\n </Focus.Item>\n </Mosaic.Tile>\n </Menu.Root>\n ),\n);\n\nStackTile.displayName = 'StackTile';\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["Atom", "useAtomValue", "Effect", "Option", "React", "forwardRef", "useCallback", "useMemo", "useState", "Surface", "useSpaceCallback", "AppSurface", "useObjectMenuItems", "Agent", "Database", "Feed", "Filter", "Obj", "Query", "Ref", "useQuery", "Card", "Icon", "IconButton", "Message", "Panel", "ScrollArea", "Toolbar", "useTranslation", "composable", "Masonry", "Menu", "Focus", "Mosaic", "isNonNullable", "meta", "AgentArticle", "role", "subject", "agent", "t", "profile", "key", "tab", "setTab", "viewport", "setViewport", "spaceId", "getDatabase", "resetHistory", "FeedService", "Service", "fnUntraced", "resetChatHistory", "feed", "add", "make", "update", "handleResetHistory", "artifacts", "atom", "pipe", "get", "map", "artifact", "data", "filter", "inputFeed", "_", "fromNullable", "ref", "getOrUndefined", "db", "inputObjects", "select", "everything", "from", "nothing", "Root", "asChild", "ToggleGroup", "type", "value", "onValueChange", "ToggleGroupIconItem", "label", "icon", "Separator", "onCanPlay", "Content", "className", "length", "classNames", "valence", "Title", "Tile", "MasonryArtifactTile", "padding", "thin", "centered", "Viewport", "items", "getId", "item", "id", "Container", "withFocus", "autoScroll", "orientation", "VirtualStack", "StackTile", "draggable", "estimateSize", "gap", "getScrollElement", "ArtifactTileCard", "props", "forwardedRef", "objectMenuItems", "getIcon", "data-testid", "fullWidth", "Header", "Block", "getLabel", "fallback", "end", "Trigger", "disabled", "iconOnly", "variant", "Body", "CardContent", "limit", "displayName", "location", "debug", "current", "Item"]
|
|
7
|
-
}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import "./chunk-J5LGTIGS.mjs";
|
|
2
|
-
|
|
3
|
-
// src/components/AssistantSettings/AssistantSettings.tsx
|
|
4
|
-
import React, { useMemo } from "react";
|
|
5
|
-
import { DEFAULT_EDGE_MODELS, DEFAULT_LMSTUDIO_MODELS, DEFAULT_OLLAMA_MODELS } from "@dxos/ai";
|
|
6
|
-
import { useTranslation } from "@dxos/react-ui";
|
|
7
|
-
import { Settings as SettingsForm, createSelectField } from "@dxos/react-ui-form";
|
|
8
|
-
import { meta } from "#meta";
|
|
9
|
-
import { Assistant } from "#types";
|
|
10
|
-
var AssistantSettings = ({ settings, onSettingsChange }) => {
|
|
11
|
-
const { t } = useTranslation(meta.profile.key);
|
|
12
|
-
const fieldMap = useMemo(() => ({
|
|
13
|
-
modelDefaults: {
|
|
14
|
-
edge: createSelectField({
|
|
15
|
-
options: DEFAULT_EDGE_MODELS
|
|
16
|
-
}),
|
|
17
|
-
ollama: createSelectField({
|
|
18
|
-
options: DEFAULT_OLLAMA_MODELS
|
|
19
|
-
}),
|
|
20
|
-
lmstudio: createSelectField({
|
|
21
|
-
options: DEFAULT_LMSTUDIO_MODELS
|
|
22
|
-
})
|
|
23
|
-
}
|
|
24
|
-
}), []);
|
|
25
|
-
return /* @__PURE__ */ React.createElement(SettingsForm.Viewport, null, /* @__PURE__ */ React.createElement(SettingsForm.Section, {
|
|
26
|
-
title: t("settings.title", {
|
|
27
|
-
ns: meta.profile.key
|
|
28
|
-
})
|
|
29
|
-
}, /* @__PURE__ */ React.createElement(SettingsForm.FieldSet, {
|
|
30
|
-
readonly: !onSettingsChange,
|
|
31
|
-
schema: Assistant.Settings,
|
|
32
|
-
fieldMap,
|
|
33
|
-
values: settings,
|
|
34
|
-
onValuesChanged: (values) => onSettingsChange?.(() => values)
|
|
35
|
-
})));
|
|
36
|
-
};
|
|
37
|
-
export {
|
|
38
|
-
AssistantSettings as default
|
|
39
|
-
};
|
|
40
|
-
//# sourceMappingURL=AssistantSettings-7ALY4BMS.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/AssistantSettings/AssistantSettings.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { useMemo } from 'react';\n\nimport { DEFAULT_EDGE_MODELS, DEFAULT_LMSTUDIO_MODELS, DEFAULT_OLLAMA_MODELS } from '@dxos/ai';\nimport { type AppSurface } from '@dxos/app-toolkit/ui';\nimport { useTranslation } from '@dxos/react-ui';\nimport { Settings as SettingsForm, createSelectField } from '@dxos/react-ui-form';\n\nimport { meta } from '#meta';\nimport { Assistant } from '#types';\n\nexport type AssistantSettingsProps = AppSurface.SettingsArticleProps<Assistant.Settings>;\n\nexport const AssistantSettings = ({ settings, onSettingsChange }: AssistantSettingsProps) => {\n const { t } = useTranslation(meta.profile.key);\n const fieldMap = useMemo(\n () => ({\n modelDefaults: {\n edge: createSelectField({ options: DEFAULT_EDGE_MODELS }),\n ollama: createSelectField({ options: DEFAULT_OLLAMA_MODELS }),\n lmstudio: createSelectField({ options: DEFAULT_LMSTUDIO_MODELS }),\n },\n }),\n [],\n );\n\n return (\n <SettingsForm.Viewport>\n <SettingsForm.Section title={t('settings.title', { ns: meta.profile.key })}>\n <SettingsForm.FieldSet<Assistant.Settings>\n readonly={!onSettingsChange}\n schema={Assistant.Settings}\n fieldMap={fieldMap}\n values={settings}\n onValuesChanged={(values) => onSettingsChange?.(() => values)}\n />\n </SettingsForm.Section>\n </SettingsForm.Viewport>\n );\n};\n"],
|
|
5
|
-
"mappings": ";;;AAIA,OAAOA,SAASC,eAAe;AAE/B,SAASC,qBAAqBC,yBAAyBC,6BAA6B;AAEpF,SAASC,sBAAsB;AAC/B,SAASC,YAAYC,cAAcC,yBAAyB;AAE5D,SAASC,YAAY;AACrB,SAASC,iBAAiB;AAInB,IAAMC,oBAAoB,CAAC,EAAEC,UAAUC,iBAAgB,MAA0B;AACtF,QAAM,EAAEC,EAAC,IAAKT,eAAeI,KAAKM,QAAQC,GAAG;AAC7C,QAAMC,WAAWhB,QACf,OAAO;IACLiB,eAAe;MACbC,MAAMX,kBAAkB;QAAEY,SAASlB;MAAoB,CAAA;MACvDmB,QAAQb,kBAAkB;QAAEY,SAAShB;MAAsB,CAAA;MAC3DkB,UAAUd,kBAAkB;QAAEY,SAASjB;MAAwB,CAAA;IACjE;EACF,IACA,CAAA,CAAE;AAGJ,SACE,sBAAA,cAACI,aAAagB,UAAQ,MACpB,sBAAA,cAAChB,aAAaiB,SAAO;IAACC,OAAOX,EAAE,kBAAkB;MAAEY,IAAIjB,KAAKM,QAAQC;IAAI,CAAA;KACtE,sBAAA,cAACT,aAAaoB,UAAQ;IACpBC,UAAU,CAACf;IACXgB,QAAQnB,UAAUJ;IAClBW;IACAa,QAAQlB;IACRmB,iBAAiB,CAACD,WAAWjB,mBAAmB,MAAMiB,MAAAA;;AAKhE;",
|
|
6
|
-
"names": ["React", "useMemo", "DEFAULT_EDGE_MODELS", "DEFAULT_LMSTUDIO_MODELS", "DEFAULT_OLLAMA_MODELS", "useTranslation", "Settings", "SettingsForm", "createSelectField", "meta", "Assistant", "AssistantSettings", "settings", "onSettingsChange", "t", "profile", "key", "fieldMap", "modelDefaults", "edge", "options", "ollama", "lmstudio", "Viewport", "Section", "title", "ns", "FieldSet", "readonly", "schema", "values", "onValuesChanged"]
|
|
7
|
-
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import "./chunk-J5LGTIGS.mjs";
|
|
2
|
-
|
|
3
|
-
// src/containers/BlueprintArticle/BlueprintArticle.tsx
|
|
4
|
-
import React from "react";
|
|
5
|
-
import { Panel, Toolbar } from "@dxos/react-ui";
|
|
6
|
-
import { useAttention } from "@dxos/react-ui-attention";
|
|
7
|
-
import { TemplateEditor } from "#components";
|
|
8
|
-
var BlueprintArticle = ({ role, attendableId, subject }) => {
|
|
9
|
-
const { hasAttention } = useAttention(attendableId);
|
|
10
|
-
return /* @__PURE__ */ React.createElement(Panel.Root, {
|
|
11
|
-
role,
|
|
12
|
-
classNames: "dx-document"
|
|
13
|
-
}, /* @__PURE__ */ React.createElement(Panel.Toolbar, {
|
|
14
|
-
asChild: true
|
|
15
|
-
}, /* @__PURE__ */ React.createElement(Toolbar.Root, {
|
|
16
|
-
disabled: !hasAttention
|
|
17
|
-
})), /* @__PURE__ */ React.createElement(Panel.Content, {
|
|
18
|
-
asChild: true
|
|
19
|
-
}, /* @__PURE__ */ React.createElement(TemplateEditor, {
|
|
20
|
-
id: subject.id,
|
|
21
|
-
source: subject.instructions.source
|
|
22
|
-
})));
|
|
23
|
-
};
|
|
24
|
-
export {
|
|
25
|
-
BlueprintArticle as default
|
|
26
|
-
};
|
|
27
|
-
//# sourceMappingURL=BlueprintArticle-ZBOZNZM7.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/containers/BlueprintArticle/BlueprintArticle.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type AppSurface } from '@dxos/app-toolkit/ui';\nimport { type Blueprint } from '@dxos/compute';\nimport { Panel, Toolbar } from '@dxos/react-ui';\nimport { useAttention } from '@dxos/react-ui-attention';\n\nimport { TemplateEditor } from '#components';\n\nexport type BlueprintArticleProps = AppSurface.ObjectArticleProps<Blueprint.Blueprint>;\n\nexport const BlueprintArticle = ({ role, attendableId, subject }: BlueprintArticleProps) => {\n const { hasAttention } = useAttention(attendableId);\n\n return (\n <Panel.Root role={role} classNames='dx-document'>\n <Panel.Toolbar asChild>\n <Toolbar.Root disabled={!hasAttention} />\n </Panel.Toolbar>\n <Panel.Content asChild>\n <TemplateEditor id={subject.id} source={subject.instructions.source} />\n </Panel.Content>\n </Panel.Root>\n );\n};\n"],
|
|
5
|
-
"mappings": ";;;AAIA,OAAOA,WAAW;AAIlB,SAASC,OAAOC,eAAe;AAC/B,SAASC,oBAAoB;AAE7B,SAASC,sBAAsB;AAIxB,IAAMC,mBAAmB,CAAC,EAAEC,MAAMC,cAAcC,QAAO,MAAyB;AACrF,QAAM,EAAEC,aAAY,IAAKN,aAAaI,YAAAA;AAEtC,SACE,sBAAA,cAACN,MAAMS,MAAI;IAACJ;IAAYK,YAAW;KACjC,sBAAA,cAACV,MAAMC,SAAO;IAACU,SAAAA;KACb,sBAAA,cAACV,QAAQQ,MAAI;IAACG,UAAU,CAACJ;OAE3B,sBAAA,cAACR,MAAMa,SAAO;IAACF,SAAAA;KACb,sBAAA,cAACR,gBAAAA;IAAeW,IAAIP,QAAQO;IAAIC,QAAQR,QAAQS,aAAaD;;AAIrE;",
|
|
6
|
-
"names": ["React", "Panel", "Toolbar", "useAttention", "TemplateEditor", "BlueprintArticle", "role", "attendableId", "subject", "hasAttention", "Root", "classNames", "asChild", "disabled", "Content", "id", "source", "instructions"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/containers/ChatCompanion/ChatCompanion.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Option from 'effect/Option';\nimport React, { forwardRef, useCallback, useMemo } from 'react';\n\nimport { useOperationInvoker } from '@dxos/app-framework/ui';\nimport { AppAnnotation } from '@dxos/app-toolkit';\nimport { type AppSurface } from '@dxos/app-toolkit/ui';\nimport { Chat } from '@dxos/assistant-toolkit';\nimport { getSpace } from '@dxos/client/echo';\nimport { Blueprint } from '@dxos/compute';\nimport { Entity, Filter, Obj, Ref, Type } from '@dxos/echo';\nimport { SpaceOperation } from '@dxos/plugin-space';\nimport { useQuery, useRegistry } from '@dxos/react-client/echo';\nimport { useAsyncEffect } from '@dxos/react-ui';\n\nimport { useContextBinder } from '#hooks';\nimport { AssistantOperation } from '#types';\n\nimport ChatArticle from '../ChatArticle';\n\nexport type ChatCompanionProps = AppSurface.ArticleProps<Chat.Chat, {}, Obj.Unknown>;\n\nexport const ChatCompanion = forwardRef<HTMLDivElement, ChatCompanionProps>(\n ({ role = 'article', subject: chat, companionTo, attendableId }, forwardedRef) => {\n const { invokePromise } = useOperationInvoker();\n const space = getSpace(companionTo);\n useBlueprints({ subject: chat, companionTo });\n\n // Persist (and flush) a transient chat before the first request so the agent can resolve\n // the now-durable conversation feed; subsequent submits are a no-op once persisted.\n const handleSubmit = useCallback(async () => {\n if (!space || !chat || Obj.getDatabase(chat)) {\n return;\n }\n\n await invokePromise(SpaceOperation.AddObject, {\n object: chat,\n target: space.db,\n hidden: true,\n });\n await invokePromise(SpaceOperation.AddRelation, {\n db: space.db,\n schema: Chat.CompanionTo,\n source: chat,\n target: companionTo,\n });\n await invokePromise(AssistantOperation.SetCurrentChat, {\n companionTo,\n chat,\n });\n await space.db.flush();\n }, [space, chat, companionTo, invokePromise]);\n\n return (\n <ChatArticle\n role={role}\n subject={chat}\n attendableId={attendableId}\n companionTo={companionTo}\n onSubmit={handleSubmit}\n ref={forwardedRef}\n />\n );\n },\n);\n\n/**\n * Bind blueprints to the context.\n */\n// TODO(burdon): Why is this only in the companion?\nconst useBlueprints = ({ subject: chat, companionTo }: Pick<ChatCompanionProps, 'subject' | 'companionTo'>) => {\n const registry = useRegistry();\n const space = getSpace(companionTo);\n const feedTarget = chat?.feed.target;\n const binder = useContextBinder(space, feedTarget);\n\n const blueprintKeys = useMemo(() => {\n const schema = companionTo ? Obj.getType(companionTo) : undefined;\n if (!schema) {\n return [] as string[];\n }\n\n return Option.getOrElse(() => [] as string[])(AppAnnotation.BlueprintsAnnotation.get(Type.getSchema(schema)));\n }, [companionTo]);\n\n const existingBlueprints = useQuery(space?.db, Filter.type(Blueprint.Blueprint));\n const pluginBlueprints = useMemo(\n () =>\n existingBlueprints.filter((blueprint) => {\n const key = Obj.getMeta(blueprint).key;\n return key !== undefined && blueprintKeys.includes(key);\n }),\n [existingBlueprints, blueprintKeys],\n );\n\n useAsyncEffect(async () => {\n if (!binder?.isOpen) {\n return;\n }\n\n // Bind annotated blueprints: use key URI for registry blueprints (no DB clone needed).\n if (blueprintKeys.length > 0) {\n const registryKeys = blueprintKeys.filter((key) => {\n const candidate = registry.list().find((e) => Entity.getMeta(e)?.key === key);\n return candidate != null && Obj.instanceOf(Blueprint.Blueprint, candidate);\n });\n\n // DB-forked blueprints (in space but not in registry).\n const dbForks = pluginBlueprints.filter((bp) => !registryKeys.includes(Obj.getMeta(bp).key ?? ''));\n if (registryKeys.length > 0) {\n await binder.bind({ blueprints: registryKeys.map((key) => Ref.fromURI(Blueprint.registryURI(key))) });\n }\n if (dbForks.length > 0) {\n await binder.bind({ blueprints: dbForks.map((blueprint) => Ref.make(blueprint)) });\n }\n }\n\n if (Obj.instanceOf(Blueprint.Blueprint, companionTo)) {\n await binder.bind({ blueprints: [Ref.make(companionTo)] });\n } else {\n await binder.bind({ objects: [Ref.make(companionTo)] });\n }\n }, [binder, blueprintKeys, pluginBlueprints, companionTo]);\n};\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["Option", "React", "forwardRef", "useCallback", "useMemo", "useOperationInvoker", "AppAnnotation", "Chat", "getSpace", "Blueprint", "Entity", "Filter", "Obj", "Ref", "Type", "SpaceOperation", "useQuery", "useRegistry", "useAsyncEffect", "useContextBinder", "AssistantOperation", "ChatCompanion", "forwardRef", "role", "subject", "chat", "companionTo", "attendableId", "forwardedRef", "invokePromise", "useOperationInvoker", "space", "getSpace", "useBlueprints", "handleSubmit", "useCallback", "Obj", "getDatabase", "SpaceOperation", "AddObject", "object", "target", "db", "hidden", "AddRelation", "schema", "Chat", "CompanionTo", "source", "AssistantOperation", "SetCurrentChat", "flush", "ChatArticle", "onSubmit", "ref", "registry", "useRegistry", "feedTarget", "feed", "binder", "useContextBinder", "blueprintKeys", "useMemo", "getType", "undefined", "getOrElse", "AppAnnotation", "BlueprintsAnnotation", "get", "Type", "getSchema", "existingBlueprints", "useQuery", "Filter", "type", "Blueprint", "pluginBlueprints", "filter", "blueprint", "key", "getMeta", "includes", "useAsyncEffect", "isOpen", "length", "registryKeys", "candidate", "list", "find", "e", "Entity", "instanceOf", "dbForks", "bp", "bind", "blueprints", "map", "Ref", "fromURI", "registryURI", "make", "objects"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/containers/ChatDialog/ChatDialog.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { useCallback, useState } from 'react';\n\nimport { useAtomCapability } from '@dxos/app-framework/ui';\nimport { type Chat as ChatTypes } from '@dxos/assistant-toolkit';\nimport { Obj } from '@dxos/echo';\nimport { useObject, useRegistry } from '@dxos/react-client/echo';\nimport { useTranslation } from '@dxos/react-ui';\nimport { ChatDialog as NaturalChatDialog } from '@dxos/react-ui-chat';\n\nimport { Chat, type ChatRootProps } from '#components';\nimport { useChatProcessor, useChatServices, useOnline, usePresets } from '#hooks';\nimport { meta } from '#meta';\nimport { type Assistant, AssistantCapabilities } from '#types';\n\nexport type ChatDialogProps = {\n chat?: ChatTypes.Chat;\n};\n\nexport const ChatDialog = ({ chat }: ChatDialogProps) => {\n const { t } = useTranslation(meta.profile.key);\n\n const db = chat && Obj.getDatabase(chat);\n const settings = useAtomCapability(AssistantCapabilities.Settings);\n const runtime = useChatServices({ id: db?.spaceId });\n const [online, setOnline] = useOnline();\n const { preset, ...chatProps } = usePresets(online);\n const registry = useRegistry();\n const processor = useChatProcessor({ chat, preset, runtime, registry, settings });\n // Subscribe via `useObject` so the thread re-renders when ChatOptions changes the view type.\n const [chatViewType] = useObject(chat, 'viewType');\n\n // TODO(burdon): Refocus when open.\n const [open, setOpen] = useState(true);\n const [expanded, setExpanded] = useState(false);\n const handleEvent = useCallback<NonNullable<ChatRootProps['onEvent']>>((event) => {\n switch (event.type) {\n case 'submit':\n case 'thread-open':\n setOpen(true);\n setExpanded(true);\n break;\n case 'thread-close':\n setOpen(false);\n break;\n }\n }, []);\n\n if (!chat || !processor) {\n return null;\n }\n\n return (\n <Chat.Root chat={chat} processor={processor} onEvent={handleEvent}>\n <NaturalChatDialog.Root open={open} expanded={expanded} onOpenChange={setOpen}>\n <NaturalChatDialog.Header title={t('assistant-dialog.title')} />\n <NaturalChatDialog.Content>\n <Chat.Thread viewType={(chatViewType as Assistant.ChatView | undefined) ?? settings.chatView} />\n </NaturalChatDialog.Content>\n <NaturalChatDialog.Footer classNames='p-1.5'>\n <Chat.Prompt {...chatProps} preset={preset?.id} online={online} onOnlineChange={setOnline} expandable />\n </NaturalChatDialog.Footer>\n </NaturalChatDialog.Root>\n </Chat.Root>\n );\n};\n"],
|
|
5
|
-
"mappings": ";;;AAIA,OAAOA,SAASC,aAAaC,gBAAgB;AAE7C,SAASC,yBAAyB;AAElC,SAASC,WAAW;AACpB,SAASC,WAAWC,mBAAmB;AACvC,SAASC,sBAAsB;AAC/B,SAASC,cAAcC,yBAAyB;AAEhD,SAASC,YAAgC;AACzC,SAASC,kBAAkBC,iBAAiBC,WAAWC,kBAAkB;AACzE,SAASC,YAAY;AACrB,SAAyBC,6BAA6B;AAM/C,IAAMR,aAAa,CAAC,EAAES,KAAI,MAAmB;AAClD,QAAM,EAAEC,EAAC,IAAKX,eAAeQ,KAAKI,QAAQC,GAAG;AAE7C,QAAMC,KAAKJ,QAAQb,IAAIkB,YAAYL,IAAAA;AACnC,QAAMM,WAAWpB,kBAAkBa,sBAAsBQ,QAAQ;AACjE,QAAMC,UAAUb,gBAAgB;IAAEc,IAAIL,IAAIM;EAAQ,CAAA;AAClD,QAAM,CAACC,QAAQC,SAAAA,IAAahB,UAAAA;AAC5B,QAAM,EAAEiB,QAAQ,GAAGC,UAAAA,IAAcjB,WAAWc,MAAAA;AAC5C,QAAMI,WAAW1B,YAAAA;AACjB,QAAM2B,YAAYtB,iBAAiB;IAAEM;IAAMa;IAAQL;IAASO;IAAUT;EAAS,CAAA;AAE/E,QAAM,CAACW,YAAAA,IAAgB7B,UAAUY,MAAM,UAAA;AAGvC,QAAM,CAACkB,MAAMC,OAAAA,IAAWlC,SAAS,IAAA;AACjC,QAAM,CAACmC,UAAUC,WAAAA,IAAepC,SAAS,KAAA;AACzC,QAAMqC,cAActC,YAAmD,CAACuC,UAAAA;AACtE,YAAQA,MAAMC,MAAI;MAChB,KAAK;MACL,KAAK;AACHL,gBAAQ,IAAA;AACRE,oBAAY,IAAA;AACZ;MACF,KAAK;AACHF,gBAAQ,KAAA;AACR;IACJ;EACF,GAAG,CAAA,CAAE;AAEL,MAAI,CAACnB,QAAQ,CAACgB,WAAW;AACvB,WAAO;EACT;AAEA,SACE,sBAAA,cAACvB,KAAKgC,MAAI;IAACzB;IAAYgB;IAAsBU,SAASJ;KACpD,sBAAA,cAAC9B,kBAAkBiC,MAAI;IAACP;IAAYE;IAAoBO,cAAcR;KACpE,sBAAA,cAAC3B,kBAAkBoC,QAAM;IAACC,OAAO5B,EAAE,wBAAA;MACnC,sBAAA,cAACT,kBAAkBsC,SAAO,MACxB,sBAAA,cAACrC,KAAKsC,QAAM;IAACC,UAAWf,gBAAmDX,SAAS2B;OAEtF,sBAAA,cAACzC,kBAAkB0C,QAAM;IAACC,YAAW;KACnC,sBAAA,cAAC1C,KAAK2C,QAAM;IAAE,GAAGtB;IAAWD,QAAQA,QAAQJ;IAAIE;IAAgB0B,gBAAgBzB;IAAW0B,YAAAA;;AAKrG;",
|
|
6
|
-
"names": ["React", "useCallback", "useState", "useAtomCapability", "Obj", "useObject", "useRegistry", "useTranslation", "ChatDialog", "NaturalChatDialog", "Chat", "useChatProcessor", "useChatServices", "useOnline", "usePresets", "meta", "AssistantCapabilities", "chat", "t", "profile", "key", "db", "getDatabase", "settings", "Settings", "runtime", "id", "spaceId", "online", "setOnline", "preset", "chatProps", "registry", "processor", "chatViewType", "open", "setOpen", "expanded", "setExpanded", "handleEvent", "event", "type", "Root", "onEvent", "onOpenChange", "Header", "title", "Content", "Thread", "viewType", "chatView", "Footer", "classNames", "Prompt", "onOnlineChange", "expandable"]
|
|
7
|
-
}
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
import "./chunk-J5LGTIGS.mjs";
|
|
2
|
-
|
|
3
|
-
// src/containers/RoutineArticle/RoutineArticle.tsx
|
|
4
|
-
import React, { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
5
|
-
import { useSpaceCallback } from "@dxos/app-framework/ui";
|
|
6
|
-
import { AgentPrompt } from "@dxos/assistant-toolkit";
|
|
7
|
-
import { Operation } from "@dxos/compute";
|
|
8
|
-
import { Database, Feed, Obj } from "@dxos/echo";
|
|
9
|
-
import { invariant } from "@dxos/invariant";
|
|
10
|
-
import { Panel, Toolbar, useTranslation } from "@dxos/react-ui";
|
|
11
|
-
import { useAttention } from "@dxos/react-ui-attention";
|
|
12
|
-
import { JsonHighlighter } from "@dxos/react-ui-syntax-highlighter";
|
|
13
|
-
import { TemplateEditor } from "#components";
|
|
14
|
-
import { meta } from "#meta";
|
|
15
|
-
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-assistant/src/containers/RoutineArticle/RoutineArticle.tsx";
|
|
16
|
-
var RoutineArticle = ({ role, attendableId, subject }) => {
|
|
17
|
-
const { t } = useTranslation(meta.profile.key);
|
|
18
|
-
const { hasAttention } = useAttention(attendableId);
|
|
19
|
-
const invoke = usePromptHandler(subject);
|
|
20
|
-
const [state, setState] = useState({
|
|
21
|
-
status: "idle"
|
|
22
|
-
});
|
|
23
|
-
const mountedRef = useRef(true);
|
|
24
|
-
useEffect(() => {
|
|
25
|
-
return () => {
|
|
26
|
-
mountedRef.current = false;
|
|
27
|
-
};
|
|
28
|
-
}, []);
|
|
29
|
-
const handleRun = useCallback(async () => {
|
|
30
|
-
setState({
|
|
31
|
-
status: "running"
|
|
32
|
-
});
|
|
33
|
-
try {
|
|
34
|
-
const result = await invoke();
|
|
35
|
-
if (mountedRef.current) {
|
|
36
|
-
setState({
|
|
37
|
-
status: "success",
|
|
38
|
-
result
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
} catch (err) {
|
|
42
|
-
if (mountedRef.current) {
|
|
43
|
-
setState({
|
|
44
|
-
status: "error",
|
|
45
|
-
error: err instanceof Error ? err : new Error(String(err))
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}, [
|
|
50
|
-
invoke
|
|
51
|
-
]);
|
|
52
|
-
return /* @__PURE__ */ React.createElement(Panel.Root, {
|
|
53
|
-
role,
|
|
54
|
-
className: "dx-document"
|
|
55
|
-
}, /* @__PURE__ */ React.createElement(Panel.Toolbar, {
|
|
56
|
-
asChild: true
|
|
57
|
-
}, /* @__PURE__ */ React.createElement(Toolbar.Root, {
|
|
58
|
-
disabled: !hasAttention || state.status === "running"
|
|
59
|
-
}, /* @__PURE__ */ React.createElement(Toolbar.IconButton, {
|
|
60
|
-
iconOnly: true,
|
|
61
|
-
icon: state.status === "running" ? "ph--spinner-gap--regular" : "ph--play--regular",
|
|
62
|
-
label: t("run-prompt.label"),
|
|
63
|
-
onClick: handleRun
|
|
64
|
-
}))), /* @__PURE__ */ React.createElement(Panel.Content, {
|
|
65
|
-
classNames: "flex flex-col gap-2"
|
|
66
|
-
}, /* @__PURE__ */ React.createElement(TemplateEditor, {
|
|
67
|
-
id: subject.id,
|
|
68
|
-
source: subject.instructions
|
|
69
|
-
}), /* @__PURE__ */ React.createElement(RoutineResult, {
|
|
70
|
-
state
|
|
71
|
-
})));
|
|
72
|
-
};
|
|
73
|
-
var RoutineResult = ({ state }) => {
|
|
74
|
-
const { t } = useTranslation(meta.profile.key);
|
|
75
|
-
switch (state.status) {
|
|
76
|
-
case "idle":
|
|
77
|
-
return null;
|
|
78
|
-
case "running":
|
|
79
|
-
return /* @__PURE__ */ React.createElement("div", {
|
|
80
|
-
className: "p-2 text-sm text-subdued"
|
|
81
|
-
}, t("routine-running.label"));
|
|
82
|
-
case "error":
|
|
83
|
-
return /* @__PURE__ */ React.createElement("div", {
|
|
84
|
-
className: "p-2 text-sm text-error"
|
|
85
|
-
}, state.error.message);
|
|
86
|
-
case "success":
|
|
87
|
-
return /* @__PURE__ */ React.createElement(JsonHighlighter, {
|
|
88
|
-
classNames: "p-2! text-sm",
|
|
89
|
-
data: state.result
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
};
|
|
93
|
-
var usePromptHandler = (routine) => {
|
|
94
|
-
const db = Obj.getDatabase(routine);
|
|
95
|
-
const data = useMemo(() => {
|
|
96
|
-
if (db && routine) {
|
|
97
|
-
return {
|
|
98
|
-
prompt: db.makeRef(Obj.getURI(routine)),
|
|
99
|
-
input: {}
|
|
100
|
-
};
|
|
101
|
-
}
|
|
102
|
-
}, [
|
|
103
|
-
routine,
|
|
104
|
-
db
|
|
105
|
-
]);
|
|
106
|
-
return useSpaceCallback(db?.spaceId, [
|
|
107
|
-
Database.Service,
|
|
108
|
-
Feed.FeedService
|
|
109
|
-
], () => {
|
|
110
|
-
invariant(data, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 110, S: void 0, A: ["data", ""] });
|
|
111
|
-
return Operation.invoke(AgentPrompt, data);
|
|
112
|
-
}, [
|
|
113
|
-
data
|
|
114
|
-
]);
|
|
115
|
-
};
|
|
116
|
-
export {
|
|
117
|
-
RoutineArticle as default
|
|
118
|
-
};
|
|
119
|
-
//# sourceMappingURL=RoutineArticle-FK5BXQN5.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/containers/RoutineArticle/RoutineArticle.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\n\nimport { useSpaceCallback } from '@dxos/app-framework/ui';\nimport { type AppSurface } from '@dxos/app-toolkit/ui';\nimport { AgentPrompt } from '@dxos/assistant-toolkit';\nimport { Operation, type Routine } from '@dxos/compute';\nimport { Database, Feed, Obj } from '@dxos/echo';\nimport { invariant } from '@dxos/invariant';\nimport { Panel, Toolbar, useTranslation } from '@dxos/react-ui';\nimport { useAttention } from '@dxos/react-ui-attention';\nimport { JsonHighlighter } from '@dxos/react-ui-syntax-highlighter';\n\nimport { TemplateEditor } from '#components';\nimport { meta } from '#meta';\n\nexport type RoutineArticleProps = AppSurface.ObjectArticleProps<Routine.Routine>;\n\ntype RunState =\n | { status: 'idle' }\n | { status: 'running' }\n | { status: 'success'; result: unknown }\n | { status: 'error'; error: Error };\n\n// TODO(burdon): Trigger editor.\nexport const RoutineArticle = ({ role, attendableId, subject }: RoutineArticleProps) => {\n const { t } = useTranslation(meta.profile.key);\n const { hasAttention } = useAttention(attendableId);\n const invoke = usePromptHandler(subject);\n const [state, setState] = useState<RunState>({ status: 'idle' });\n const mountedRef = useRef(true);\n useEffect(() => {\n return () => {\n mountedRef.current = false;\n };\n }, []);\n\n const handleRun = useCallback(async () => {\n setState({ status: 'running' });\n try {\n const result = await invoke();\n if (mountedRef.current) {\n setState({ status: 'success', result });\n }\n } catch (err) {\n if (mountedRef.current) {\n setState({ status: 'error', error: err instanceof Error ? err : new Error(String(err)) });\n }\n }\n }, [invoke]);\n\n return (\n <Panel.Root role={role} className='dx-document'>\n <Panel.Toolbar asChild>\n <Toolbar.Root disabled={!hasAttention || state.status === 'running'}>\n <Toolbar.IconButton\n iconOnly\n icon={state.status === 'running' ? 'ph--spinner-gap--regular' : 'ph--play--regular'}\n label={t('run-prompt.label')}\n onClick={handleRun}\n />\n </Toolbar.Root>\n </Panel.Toolbar>\n <Panel.Content classNames='flex flex-col gap-2'>\n <TemplateEditor id={subject.id} source={subject.instructions} />\n <RoutineResult state={state} />\n </Panel.Content>\n </Panel.Root>\n );\n};\n\nconst RoutineResult = ({ state }: { state: RunState }) => {\n const { t } = useTranslation(meta.profile.key);\n switch (state.status) {\n case 'idle':\n return null;\n case 'running':\n return <div className='p-2 text-sm text-subdued'>{t('routine-running.label')}</div>;\n case 'error':\n return <div className='p-2 text-sm text-error'>{state.error.message}</div>;\n case 'success':\n return <JsonHighlighter classNames='p-2! text-sm' data={state.result} />;\n }\n};\n\nconst usePromptHandler = (routine: Routine.Routine) => {\n const db = Obj.getDatabase(routine);\n const data = useMemo<Operation.Definition.Input<typeof AgentPrompt> | undefined>(() => {\n if (db && routine) {\n return {\n prompt: db.makeRef(Obj.getURI(routine)),\n input: {},\n };\n }\n }, [routine, db]);\n\n return useSpaceCallback(\n db?.spaceId,\n [Database.Service, Feed.FeedService] as const,\n () => {\n invariant(data);\n return Operation.invoke(AgentPrompt, data);\n },\n [data],\n );\n};\n"],
|
|
5
|
-
"mappings": ";;;AAIA,OAAOA,SAASC,aAAaC,WAAWC,SAASC,QAAQC,gBAAgB;AAEzE,SAASC,wBAAwB;AAEjC,SAASC,mBAAmB;AAC5B,SAASC,iBAA+B;AACxC,SAASC,UAAUC,MAAMC,WAAW;AACpC,SAASC,iBAAiB;AAC1B,SAASC,OAAOC,SAASC,sBAAsB;AAC/C,SAASC,oBAAoB;AAC7B,SAASC,uBAAuB;AAEhC,SAASC,sBAAsB;AAC/B,SAASC,YAAY;AAUrB,IAAA,eAAA;AAGE,IAAQC,iBAAiBJ,CAAAA,EAAAA,MAAAA,cAAaK,QAAAA,MAAAA;AACtC,QAAMC,EAAAA,EAAAA,IAAAA,eAASC,KAAiBC,QAAAA,GAAAA;AAChC,QAAM,EAACC,aAAOC,IAAS,aAAsB,YAAA;QAAEC,SAAQ,iBAAA,OAAA;AAAO,QAAA,CAAA,OAAA,QAAA,IAAA,SAAA;IAC9D,QAAMC;EACN1B,CAAAA;QACE,aAAO,OAAA,IAAA;YACL0B,MAAAA;AACF,WAAA,MAAA;AACG,iBAAA,UAAA;IAEL;MACEF,CAAAA;oBAAmB,YAAA,YAAA;AAAU,aAAA;MACzB,QAAA;;QAEF;YACEA,SAAS,MAAA,OAAA;qBAAEC,SAAQ;iBAAWE;UAAO,QAAA;UACvC;QACA,CAAOC;MACP;aACEJ,KAAAA;qBAAWC,SAAQ;iBAASI;UAA2D,QAAA;UACzF,OAAA,eAAA,QAAA,MAAA,IAAA,MAAA,OAAA,GAAA,CAAA;QACF,CAAA;MACC;IAACT;KAAO;IAEX;;SACoC,sBAAA,cAAA,MAAA,MAAA;;IACjBU,WAAAA;KACb,sBAAA,cAAClB,MAAAA,SAAY;IAACmB,SAAAA;KACZ,sBAAA,cAACnB,QAAQoB,MAAAA;IACPC,UAAAA,CAAAA,gBAAAA,MAAAA,WAAAA;KACYR,sBAAM,cAAK,QAAY,YAAA;IACnCS,UAAS;IACTC,MAAAA,MAASC,WAAAA,YAAAA,6BAAAA;+BAIf;IAAeC,SAAAA;QACb,sBAAA,cAACrB,MAAAA,SAAAA;IAAesB,YAAYA;KAAYhB,sBAAQiB,cAAY,gBAAA;;IAC7ChB,QAAOA,QAAAA;;IAI5B;EAEF,CAAA,CAAMiB,CAAAA;;IAEJ,gBAAcf,CAAM,EAAA,MAAA,MAAA;QAClB,EAAA,EAAK,IAAA,eAAA,KAAA,QAAA,GAAA;gBACH,QAAO;IACT,KAAK;AACH,aAAA;;aAAoD,sBAAA,cAAA,OAAA;QACjD,WAAA;MACH,GAAA,EAAA,uBAAO,CAAA;;aAAqDgB,sBAAO,cAAA,OAAA;QAChE,WAAA;MACH,GAAA,MAAA,MAAA,OAAO;;aAAuDd,sBAAM,cAAA,iBAAA;;QACxE,MAAA,MAAA;MACF,CAAA;EAEA;;IAEE,mBAAiF,CAAA,YAAA;QAC/E,KAAIe,IAAMC,YAAS,OAAA;eACjB,QAAO,MAAA;cACLC,SAAWC;aACXC;QACF,QAAA,GAAA,QAAA,IAAA,OAAA,OAAA,CAAA;QACF,OAAA,CAAA;MACC;IAACH;;IAAY;IAEhB;;SAEqBnC,iBAAgB,IAAA,SAAA;IACnC,SAAA;IACEE,KAAAA;WACA;AAEF,cAAA,MAAA,QAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,KAAA,GAAA,QAAA,GAAA,CAAA,QAAA,EAAA,EAAA,CAAA;AAACqC,WAAAA,UAAAA,OAAAA,aAAAA,IAAAA;KAAK;IAEV;;;",
|
|
6
|
-
"names": ["React", "useCallback", "useEffect", "useMemo", "useRef", "useState", "useSpaceCallback", "AgentPrompt", "Operation", "Database", "Feed", "Obj", "invariant", "Panel", "Toolbar", "useTranslation", "useAttention", "JsonHighlighter", "TemplateEditor", "meta", "hasAttention", "attendableId", "invoke", "usePromptHandler", "subject", "state", "setState", "status", "mountedRef", "result", "err", "error", "asChild", "disabled", "IconButton", "iconOnly", "label", "onClick", "handleRun", "classNames", "id", "instructions", "RoutineResult", "message", "db", "routine", "prompt", "makeRef", "input", "data"]
|
|
7
|
-
}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import "./chunk-J5LGTIGS.mjs";
|
|
2
|
-
|
|
3
|
-
// src/containers/RoutineList/RoutineList.tsx
|
|
4
|
-
import React from "react";
|
|
5
|
-
import { useOperationInvoker } from "@dxos/app-framework/ui";
|
|
6
|
-
import { DatabaseBlueprint, WebSearchBlueprint } from "@dxos/assistant-toolkit";
|
|
7
|
-
import { Routine } from "@dxos/compute";
|
|
8
|
-
import { Filter, Obj, Ref } from "@dxos/echo";
|
|
9
|
-
import { MarkdownBlueprint } from "@dxos/plugin-markdown";
|
|
10
|
-
import { useQuery } from "@dxos/react-client/echo";
|
|
11
|
-
import { IconButton } from "@dxos/react-ui";
|
|
12
|
-
import { AssistantOperation } from "#types";
|
|
13
|
-
var RoutineList = ({ subject }) => {
|
|
14
|
-
const { invokePromise } = useOperationInvoker();
|
|
15
|
-
const db = Obj.getDatabase(subject);
|
|
16
|
-
const prompts = useQuery(db, Filter.type(Routine.Routine));
|
|
17
|
-
if (!db) {
|
|
18
|
-
return null;
|
|
19
|
-
}
|
|
20
|
-
return /* @__PURE__ */ React.createElement("div", {
|
|
21
|
-
className: "flex gap-2"
|
|
22
|
-
}, prompts.map((prompt, i) => /* @__PURE__ */ React.createElement("div", {
|
|
23
|
-
key: i
|
|
24
|
-
}, /* @__PURE__ */ React.createElement(IconButton, {
|
|
25
|
-
icon: "ph--magic-wand--regular",
|
|
26
|
-
label: Obj.getLabel(prompt) ?? Obj.getURI(prompt),
|
|
27
|
-
onClick: () => {
|
|
28
|
-
void invokePromise(AssistantOperation.RunPromptInNewChat, {
|
|
29
|
-
db,
|
|
30
|
-
prompt: Ref.make(prompt),
|
|
31
|
-
objects: [
|
|
32
|
-
subject
|
|
33
|
-
],
|
|
34
|
-
// TODO(burdon): Concifgure from Prompt object.
|
|
35
|
-
blueprints: [
|
|
36
|
-
DatabaseBlueprint.key,
|
|
37
|
-
WebSearchBlueprint.key,
|
|
38
|
-
MarkdownBlueprint.key
|
|
39
|
-
],
|
|
40
|
-
background: true
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
}))));
|
|
44
|
-
};
|
|
45
|
-
export {
|
|
46
|
-
RoutineList as default
|
|
47
|
-
};
|
|
48
|
-
//# sourceMappingURL=RoutineList-SO5ETHNT.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/containers/RoutineList/RoutineList.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { useOperationInvoker } from '@dxos/app-framework/ui';\nimport { type AppSurface } from '@dxos/app-toolkit/ui';\nimport { DatabaseBlueprint, WebSearchBlueprint } from '@dxos/assistant-toolkit';\nimport { Routine } from '@dxos/compute';\nimport { Filter, Obj, Ref } from '@dxos/echo';\nimport { MarkdownBlueprint } from '@dxos/plugin-markdown';\nimport { useQuery } from '@dxos/react-client/echo';\nimport { IconButton } from '@dxos/react-ui';\n\nimport { AssistantOperation } from '#types';\n\nexport type RoutineListProps = AppSurface.ObjectSectionProps<Obj.Unknown>;\n\nexport const RoutineList = ({ subject }: RoutineListProps) => {\n const { invokePromise } = useOperationInvoker();\n const db = Obj.getDatabase(subject);\n const prompts = useQuery(db, Filter.type(Routine.Routine));\n if (!db) {\n return null;\n }\n\n return (\n <div className='flex gap-2'>\n {prompts.map((prompt, i) => (\n <div key={i}>\n <IconButton\n icon='ph--magic-wand--regular'\n label={Obj.getLabel(prompt) ?? Obj.getURI(prompt)}\n onClick={() => {\n void invokePromise(AssistantOperation.RunPromptInNewChat, {\n db,\n prompt: Ref.make(prompt),\n objects: [subject],\n // TODO(burdon): Concifgure from Prompt object.\n blueprints: [DatabaseBlueprint.key, WebSearchBlueprint.key, MarkdownBlueprint.key],\n background: true,\n });\n }}\n />\n </div>\n ))}\n </div>\n );\n};\n"],
|
|
5
|
-
"mappings": ";;;AAIA,OAAOA,WAAW;AAElB,SAASC,2BAA2B;AAEpC,SAASC,mBAAmBC,0BAA0B;AACtD,SAASC,eAAe;AACxB,SAASC,QAAQC,KAAKC,WAAW;AACjC,SAASC,yBAAyB;AAClC,SAASC,gBAAgB;AACzB,SAASC,kBAAkB;AAE3B,SAASC,0BAA0B;AAI5B,IAAMC,cAAc,CAAC,EAAEC,QAAO,MAAoB;AACvD,QAAM,EAAEC,cAAa,IAAKb,oBAAAA;AAC1B,QAAMc,KAAKT,IAAIU,YAAYH,OAAAA;AAC3B,QAAMI,UAAUR,SAASM,IAAIV,OAAOa,KAAKd,QAAQA,OAAO,CAAA;AACxD,MAAI,CAACW,IAAI;AACP,WAAO;EACT;AAEA,SACE,sBAAA,cAACI,OAAAA;IAAIC,WAAU;KACZH,QAAQI,IAAI,CAACC,QAAQC,MACpB,sBAAA,cAACJ,OAAAA;IAAIK,KAAKD;KACR,sBAAA,cAACb,YAAAA;IACCe,MAAK;IACLC,OAAOpB,IAAIqB,SAASL,MAAAA,KAAWhB,IAAIsB,OAAON,MAAAA;IAC1CO,SAAS,MAAA;AACP,WAAKf,cAAcH,mBAAmBmB,oBAAoB;QACxDf;QACAO,QAAQf,IAAIwB,KAAKT,MAAAA;QACjBU,SAAS;UAACnB;;;QAEVoB,YAAY;UAAC/B,kBAAkBsB;UAAKrB,mBAAmBqB;UAAKhB,kBAAkBgB;;QAC9EU,YAAY;MACd,CAAA;IACF;;AAMZ;",
|
|
6
|
-
"names": ["React", "useOperationInvoker", "DatabaseBlueprint", "WebSearchBlueprint", "Routine", "Filter", "Obj", "Ref", "MarkdownBlueprint", "useQuery", "IconButton", "AssistantOperation", "RoutineList", "subject", "invokePromise", "db", "getDatabase", "prompts", "type", "div", "className", "map", "prompt", "i", "key", "icon", "label", "getLabel", "getURI", "onClick", "RunPromptInNewChat", "make", "objects", "blueprints", "background"]
|
|
7
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import "./chunk-J5LGTIGS.mjs";
|
|
2
|
-
|
|
3
|
-
// src/components/RoutineProperties/RoutineProperties.tsx
|
|
4
|
-
import React from "react";
|
|
5
|
-
import { Panel } from "@dxos/react-ui";
|
|
6
|
-
import { ObjectProperties } from "@dxos/react-ui-form";
|
|
7
|
-
var RoutineProperties = ({ routine }) => {
|
|
8
|
-
return /* @__PURE__ */ React.createElement(Panel.Root, null, /* @__PURE__ */ React.createElement(Panel.Content, {
|
|
9
|
-
asChild: true
|
|
10
|
-
}, /* @__PURE__ */ React.createElement(ObjectProperties, {
|
|
11
|
-
object: routine
|
|
12
|
-
})));
|
|
13
|
-
};
|
|
14
|
-
export {
|
|
15
|
-
RoutineProperties as default
|
|
16
|
-
};
|
|
17
|
-
//# sourceMappingURL=RoutineProperties-FISLMW2R.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/RoutineProperties/RoutineProperties.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2026 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type Routine } from '@dxos/compute';\nimport { Panel } from '@dxos/react-ui';\nimport { ObjectProperties } from '@dxos/react-ui-form';\n\nexport type RoutinePropertiesProps = {\n routine: Routine.Routine;\n};\n\nexport const RoutineProperties = ({ routine }: RoutinePropertiesProps) => {\n return (\n <Panel.Root>\n <Panel.Content asChild>\n <ObjectProperties object={routine} />\n </Panel.Content>\n </Panel.Root>\n );\n};\n"],
|
|
5
|
-
"mappings": ";;;AAIA,OAAOA,WAAW;AAGlB,SAASC,aAAa;AACtB,SAASC,wBAAwB;AAM1B,IAAMC,oBAAoB,CAAC,EAAEC,QAAO,MAA0B;AACnE,SACE,sBAAA,cAACH,MAAMI,MAAI,MACT,sBAAA,cAACJ,MAAMK,SAAO;IAACC,SAAAA;KACb,sBAAA,cAACL,kBAAAA;IAAiBM,QAAQJ;;AAIlC;",
|
|
6
|
-
"names": ["React", "Panel", "ObjectProperties", "RoutineProperties", "routine", "Root", "Content", "asChild", "object"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/containers/SpaceHomePrompt/SpaceHomePrompt.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2026 DXOS.org\n//\n\nimport React, { useEffect, useMemo, useState } from 'react';\n\nimport { Capabilities } from '@dxos/app-framework';\nimport { useCapability, useOperationInvoker } from '@dxos/app-framework/ui';\nimport { LayoutOperation } from '@dxos/app-toolkit';\nimport { Event } from '@dxos/async';\nimport { type Space, useRegistry } from '@dxos/react-client/echo';\nimport { useTranslation } from '@dxos/react-ui';\n\nimport { ChatPrompt, type ChatEvent } from '#components';\nimport { useChatProcessor, useChatServices, useOnline, usePresets } from '#hooks';\nimport { meta } from '#meta';\nimport { AssistantCapabilities, AssistantOperation, type ChatType } from '#types';\n\nimport { getChatPath } from '../../paths';\n\ntype SpaceScopedProps = {\n space?: Space;\n};\n\n/**\n * Home article pinned-bottom contributor: the assistant prompt. Backed by an ephemeral in-memory\n * chat whose sole responsibility is to collect the user's text, context bindings, and preset\n * choice, then on submit: persist the chat to the space, queue the text as a pending prompt, and\n * navigate to it. AI generation runs in the opened chat view — the processor here exists only to\n * back the context-binder UI.\n */\nexport const SpaceHomePrompt = ({ space }: SpaceScopedProps) => {\n const { t } = useTranslation(meta.profile.key);\n const { invokePromise } = useOperationInvoker();\n\n const registry = useRegistry();\n const atomRegistry = useCapability(Capabilities.AtomRegistry);\n const stateAtom = useCapability(AssistantCapabilities.State);\n const runtime = useChatServices({ id: space?.id });\n const [online, setOnline] = useOnline();\n const { preset, ...presetProps } = usePresets(online);\n\n // In-memory backing chat (not yet added to the space). `nonce` forces a fresh chat after submit.\n const [chat, setChat] = useState<ChatType.Chat>();\n const [nonce, setNonce] = useState(0);\n useEffect(() => {\n if (!space) {\n setChat(undefined);\n return;\n }\n let cancelled = false;\n void invokePromise(AssistantOperation.CreateChat, { db: space.db, addToSpace: false }).then((result) => {\n if (!cancelled) {\n setChat(result.data?.object);\n }\n });\n return () => {\n cancelled = true;\n };\n }, [space, nonce, invokePromise]);\n\n const processor = useChatProcessor({ space, chat, preset, runtime, registry });\n\n const event = useMemo(() => new Event<ChatEvent>(), []);\n useEffect(() => {\n return event.on((ev) => {\n if (ev.type !== 'submit') {\n return;\n }\n const text = ev.text.trim();\n if (!space || !chat || text.length === 0) {\n return;\n }\n\n // Persist the in-memory chat, queue the prompt, and open the chat (which submits it).\n space.db.add(chat);\n const chatPath = getChatPath(space.db.spaceId, chat.id);\n atomRegistry.update(stateAtom, (current) => ({\n ...current,\n pendingPrompts: { ...current.pendingPrompts, [chatPath]: text },\n }));\n void invokePromise(LayoutOperation.Open, { subject: [chatPath] });\n setNonce((current) => current + 1);\n });\n }, [event, space, chat, atomRegistry, stateAtom, invokePromise]);\n\n if (!processor || !chat || !space) {\n return null;\n }\n\n return (\n <ChatPrompt\n {...presetProps}\n outline\n chat={chat}\n db={space.db}\n processor={processor}\n event={event}\n preset={preset?.id}\n online={online}\n onOnlineChange={setOnline}\n placeholder={t('space-home.prompt.placeholder')}\n />\n );\n};\n"],
|
|
5
|
-
"mappings": ";;;;;;AAIA,OAAOA,SAASC,WAAWC,SAASC,gBAAgB;AAEpD,SAASC,oBAAoB;AAC7B,SAASC,eAAeC,2BAA2B;AACnD,SAASC,uBAAuB;AAChC,SAASC,aAAa;AACtB,SAAqBC,mBAAmB;AACxC,SAASC,sBAAsB;AAE/B,SAASC,kBAAkC;AAC3C,SAASC,kBAAkBC,iBAAiBC,WAAWC,kBAAkB;AACzE,SAASC,YAAY;AACrB,SAASC,uBAAuBC,0BAAyC;AAelE,IAAMC,kBAAkB,CAAC,EAAEC,MAAK,MAAoB;AACzD,QAAM,EAAEC,EAAC,IAAKC,eAAeC,KAAKC,QAAQC,GAAG;AAC7C,QAAM,EAAEC,cAAa,IAAKC,oBAAAA;AAE1B,QAAMC,WAAWC,YAAAA;AACjB,QAAMC,eAAeC,cAAcC,aAAaC,YAAY;AAC5D,QAAMC,YAAYH,cAAcI,sBAAsBC,KAAK;AAC3D,QAAMC,UAAUC,gBAAgB;IAAEC,IAAInB,OAAOmB;EAAG,CAAA;AAChD,QAAM,CAACC,QAAQC,SAAAA,IAAaC,UAAAA;AAC5B,QAAM,EAAEC,QAAQ,GAAGC,YAAAA,IAAgBC,WAAWL,MAAAA;AAG9C,QAAM,CAACM,MAAMC,OAAAA,IAAWC,SAAAA;AACxB,QAAM,CAACC,OAAOC,QAAAA,IAAYF,SAAS,CAAA;AACnCG,YAAU,MAAA;AACR,QAAI,CAAC/B,OAAO;AACV2B,cAAQK,MAAAA;AACR;IACF;AACA,QAAIC,YAAY;AAChB,SAAK3B,cAAc4B,mBAAmBC,YAAY;MAAEC,IAAIpC,MAAMoC;MAAIC,YAAY;IAAM,CAAA,EAAGC,KAAK,CAACC,WAAAA;AAC3F,UAAI,CAACN,WAAW;AACdN,gBAAQY,OAAOC,MAAMC,MAAAA;MACvB;IACF,CAAA;AACA,WAAO,MAAA;AACLR,kBAAY;IACd;EACF,GAAG;IAACjC;IAAO6B;IAAOvB;GAAc;AAEhC,QAAMoC,YAAYC,iBAAiB;IAAE3C;IAAO0B;IAAMH;IAAQN;IAAST;EAAS,CAAA;AAE5E,QAAMoC,QAAQC,QAAQ,MAAM,IAAIC,MAAAA,GAAoB,CAAA,CAAE;AACtDf,YAAU,MAAA;AACR,WAAOa,MAAMG,GAAG,CAACC,OAAAA;AACf,UAAIA,GAAGC,SAAS,UAAU;AACxB;MACF;AACA,YAAMC,OAAOF,GAAGE,KAAKC,KAAI;AACzB,UAAI,CAACnD,SAAS,CAAC0B,QAAQwB,KAAKE,WAAW,GAAG;AACxC;MACF;AAGApD,YAAMoC,GAAGiB,IAAI3B,IAAAA;AACb,YAAM4B,WAAWC,YAAYvD,MAAMoC,GAAGoB,SAAS9B,KAAKP,EAAE;AACtDT,mBAAa+C,OAAO3C,WAAW,CAAC4C,aAAa;QAC3C,GAAGA;QACHC,gBAAgB;UAAE,GAAGD,QAAQC;UAAgB,CAACL,QAAAA,GAAWJ;QAAK;MAChE,EAAA;AACA,WAAK5C,cAAcsD,gBAAgBC,MAAM;QAAEC,SAAS;UAACR;;MAAU,CAAA;AAC/DxB,eAAS,CAAC4B,YAAYA,UAAU,CAAA;IAClC,CAAA;EACF,GAAG;IAACd;IAAO5C;IAAO0B;IAAMhB;IAAcI;IAAWR;GAAc;AAE/D,MAAI,CAACoC,aAAa,CAAChB,QAAQ,CAAC1B,OAAO;AACjC,WAAO;EACT;AAEA,SACE,sBAAA,cAAC+D,YAAAA;IACE,GAAGvC;IACJwC,SAAAA;IACAtC;IACAU,IAAIpC,MAAMoC;IACVM;IACAE;IACArB,QAAQA,QAAQJ;IAChBC;IACA6C,gBAAgB5C;IAChB6C,aAAajE,EAAE,+BAAA;;AAGrB;",
|
|
6
|
-
"names": ["React", "useEffect", "useMemo", "useState", "Capabilities", "useCapability", "useOperationInvoker", "LayoutOperation", "Event", "useRegistry", "useTranslation", "ChatPrompt", "useChatProcessor", "useChatServices", "useOnline", "usePresets", "meta", "AssistantCapabilities", "AssistantOperation", "SpaceHomePrompt", "space", "t", "useTranslation", "meta", "profile", "key", "invokePromise", "useOperationInvoker", "registry", "useRegistry", "atomRegistry", "useCapability", "Capabilities", "AtomRegistry", "stateAtom", "AssistantCapabilities", "State", "runtime", "useChatServices", "id", "online", "setOnline", "useOnline", "preset", "presetProps", "usePresets", "chat", "setChat", "useState", "nonce", "setNonce", "useEffect", "undefined", "cancelled", "AssistantOperation", "CreateChat", "db", "addToSpace", "then", "result", "data", "object", "processor", "useChatProcessor", "event", "useMemo", "Event", "on", "ev", "type", "text", "trim", "length", "add", "chatPath", "getChatPath", "spaceId", "update", "current", "pendingPrompts", "LayoutOperation", "Open", "subject", "ChatPrompt", "outline", "onOnlineChange", "placeholder"]
|
|
7
|
-
}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import "./chunk-J5LGTIGS.mjs";
|
|
2
|
-
|
|
3
|
-
// src/containers/SpaceHomeSuggestions/SpaceHomeSuggestions.tsx
|
|
4
|
-
import React, { useCallback } from "react";
|
|
5
|
-
import { useOperationInvoker } from "@dxos/app-framework/ui";
|
|
6
|
-
import { Card, IconButton, useTranslation } from "@dxos/react-ui";
|
|
7
|
-
import { meta } from "#meta";
|
|
8
|
-
import { AssistantOperation } from "#types";
|
|
9
|
-
var SUGGESTION_KEYS = [
|
|
10
|
-
"space-home.suggestion-draft-doc.label",
|
|
11
|
-
"space-home.suggestion-data-type.label",
|
|
12
|
-
"space-home.suggestion-ideas.label"
|
|
13
|
-
];
|
|
14
|
-
var SpaceHomeSuggestions = ({ space }) => {
|
|
15
|
-
const { t } = useTranslation(meta.profile.key);
|
|
16
|
-
const { invokePromise } = useOperationInvoker();
|
|
17
|
-
const handleRunPrompt = useCallback((prompt) => {
|
|
18
|
-
if (!space) {
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
void invokePromise(AssistantOperation.RunPromptInNewChat, {
|
|
22
|
-
db: space.db,
|
|
23
|
-
prompt
|
|
24
|
-
});
|
|
25
|
-
}, [
|
|
26
|
-
invokePromise,
|
|
27
|
-
space
|
|
28
|
-
]);
|
|
29
|
-
return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("h2", {
|
|
30
|
-
className: "text-sm font-medium text-description"
|
|
31
|
-
}, t("space-home.suggestions.heading")), SUGGESTION_KEYS.map((key) => {
|
|
32
|
-
const prompt = t(key);
|
|
33
|
-
return /* @__PURE__ */ React.createElement(Card.Root, {
|
|
34
|
-
key,
|
|
35
|
-
fullWidth: true,
|
|
36
|
-
role: "button",
|
|
37
|
-
classNames: "cursor-pointer",
|
|
38
|
-
onClick: () => handleRunPrompt(prompt)
|
|
39
|
-
}, /* @__PURE__ */ React.createElement(Card.Header, null, /* @__PURE__ */ React.createElement(Card.Block, null, /* @__PURE__ */ React.createElement(IconButton, {
|
|
40
|
-
variant: "ghost",
|
|
41
|
-
label: prompt,
|
|
42
|
-
icon: "ph--sparkle--regular",
|
|
43
|
-
iconOnly: true
|
|
44
|
-
})), /* @__PURE__ */ React.createElement(Card.Title, null, prompt)));
|
|
45
|
-
}));
|
|
46
|
-
};
|
|
47
|
-
export {
|
|
48
|
-
SpaceHomeSuggestions as default
|
|
49
|
-
};
|
|
50
|
-
//# sourceMappingURL=SpaceHomeSuggestions-6G4E7GNJ.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/containers/SpaceHomeSuggestions/SpaceHomeSuggestions.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2026 DXOS.org\n//\n\nimport React, { useCallback } from 'react';\n\nimport { useOperationInvoker } from '@dxos/app-framework/ui';\nimport { type Space } from '@dxos/react-client/echo';\nimport { Card, IconButton, useTranslation } from '@dxos/react-ui';\n\nimport { meta } from '#meta';\nimport { AssistantOperation } from '#types';\n\n/** Starter prompts shown on the Home page. Always rendered — they surface quick actions alongside\n * the recent-objects masonry rather than only as an empty-state fallback. */\nconst SUGGESTION_KEYS = [\n 'space-home.suggestion-draft-doc.label',\n 'space-home.suggestion-data-type.label',\n 'space-home.suggestion-ideas.label',\n] as const;\n\ntype SpaceScopedProps = {\n space?: Space;\n};\n\n/**\n * Home content contributor: starter-prompt cards. Each card runs its prompt in a new chat via the\n * assistant operation. Always renders (below the recent-objects masonry) so the Home page offers\n * quick entry points regardless of whether recent objects exist.\n */\nexport const SpaceHomeSuggestions = ({ space }: SpaceScopedProps) => {\n const { t } = useTranslation(meta.profile.key);\n const { invokePromise } = useOperationInvoker();\n\n const handleRunPrompt = useCallback(\n (prompt: string) => {\n if (!space) {\n return;\n }\n void invokePromise(AssistantOperation.RunPromptInNewChat, { db: space.db, prompt });\n },\n [invokePromise, space],\n );\n\n return (\n <>\n <h2 className='text-sm font-medium text-description'>{t('space-home.suggestions.heading')}</h2>\n {SUGGESTION_KEYS.map((key) => {\n const prompt = t(key);\n return (\n <Card.Root\n key={key}\n fullWidth\n role='button'\n classNames='cursor-pointer'\n onClick={() => handleRunPrompt(prompt)}\n >\n <Card.Header>\n <Card.Block>\n <IconButton variant='ghost' label={prompt} icon='ph--sparkle--regular' iconOnly />\n </Card.Block>\n <Card.Title>{prompt}</Card.Title>\n </Card.Header>\n </Card.Root>\n );\n })}\n </>\n );\n};\n"],
|
|
5
|
-
"mappings": ";;;AAIA,OAAOA,SAASC,mBAAmB;AAEnC,SAASC,2BAA2B;AAEpC,SAASC,MAAMC,YAAYC,sBAAsB;AAEjD,SAASC,YAAY;AACrB,SAASC,0BAA0B;AAInC,IAAMC,kBAAkB;EACtB;EACA;EACA;;AAYK,IAAMC,uBAAuB,CAAC,EAAEC,MAAK,MAAoB;AAC9D,QAAM,EAAEC,EAAC,IAAKN,eAAeC,KAAKM,QAAQC,GAAG;AAC7C,QAAM,EAAEC,cAAa,IAAKZ,oBAAAA;AAE1B,QAAMa,kBAAkBd,YACtB,CAACe,WAAAA;AACC,QAAI,CAACN,OAAO;AACV;IACF;AACA,SAAKI,cAAcP,mBAAmBU,oBAAoB;MAAEC,IAAIR,MAAMQ;MAAIF;IAAO,CAAA;EACnF,GACA;IAACF;IAAeJ;GAAM;AAGxB,SACE,sBAAA,cAAA,MAAA,UAAA,MACE,sBAAA,cAACS,MAAAA;IAAGC,WAAU;KAAwCT,EAAE,gCAAA,CAAA,GACvDH,gBAAgBa,IAAI,CAACR,QAAAA;AACpB,UAAMG,SAASL,EAAEE,GAAAA;AACjB,WACE,sBAAA,cAACV,KAAKmB,MAAI;MACRT;MACAU,WAAAA;MACAC,MAAK;MACLC,YAAW;MACXC,SAAS,MAAMX,gBAAgBC,MAAAA;OAE/B,sBAAA,cAACb,KAAKwB,QAAM,MACV,sBAAA,cAACxB,KAAKyB,OAAK,MACT,sBAAA,cAACxB,YAAAA;MAAWyB,SAAQ;MAAQC,OAAOd;MAAQe,MAAK;MAAuBC,UAAAA;SAEzE,sBAAA,cAAC7B,KAAK8B,OAAK,MAAEjB,MAAAA,CAAAA,CAAAA;EAIrB,CAAA,CAAA;AAGN;",
|
|
6
|
-
"names": ["React", "useCallback", "useOperationInvoker", "Card", "IconButton", "useTranslation", "meta", "AssistantOperation", "SUGGESTION_KEYS", "SpaceHomeSuggestions", "space", "t", "profile", "key", "invokePromise", "handleRunPrompt", "prompt", "RunPromptInNewChat", "db", "h2", "className", "map", "Root", "fullWidth", "role", "classNames", "onClick", "Header", "Block", "variant", "label", "icon", "iconOnly", "Title"]
|
|
7
|
-
}
|