@dxos/plugin-assistant 0.8.4-main.28f8d3d → 0.8.4-main.406dc2a
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/dist/lib/browser/{BlueprintContainer-H7H4BQ2C.mjs → BlueprintContainer-WX2SSDVI.mjs} +6 -7
- package/dist/lib/browser/{BlueprintContainer-H7H4BQ2C.mjs.map → BlueprintContainer-WX2SSDVI.mjs.map} +3 -3
- package/dist/lib/browser/ChatCompanion-BDZ55ZRF.mjs +150 -0
- package/dist/lib/browser/ChatCompanion-BDZ55ZRF.mjs.map +7 -0
- package/dist/lib/browser/{ChatContainer-OUVSX5V5.mjs → ChatContainer-RYGNN73X.mjs} +20 -23
- package/dist/lib/browser/ChatContainer-RYGNN73X.mjs.map +7 -0
- package/dist/lib/browser/{ChatDialog-P4FLEOHG.mjs → ChatDialog-MVHH2U66.mjs} +12 -12
- package/dist/lib/browser/ChatDialog-MVHH2U66.mjs.map +7 -0
- package/dist/lib/browser/{SequenceContainer-627OQ557.mjs → SequenceContainer-2FEWMQGW.mjs} +6 -19
- package/dist/lib/browser/SequenceContainer-2FEWMQGW.mjs.map +7 -0
- package/dist/lib/browser/ai-service-ERTZBTP3.mjs +19 -0
- package/dist/lib/browser/ai-service-ERTZBTP3.mjs.map +7 -0
- package/dist/lib/browser/{app-graph-builder-AVHHQ3KV.mjs → app-graph-builder-2U7SLCRX.mjs} +22 -34
- package/dist/lib/browser/app-graph-builder-2U7SLCRX.mjs.map +7 -0
- package/dist/lib/browser/blueprint-definition-NSJARW5U.mjs +12 -0
- package/dist/lib/browser/blueprint-definition-NSJARW5U.mjs.map +7 -0
- package/dist/lib/browser/{blueprint-definition-CMGIZAOW.mjs → chunk-2CE2KPKZ.mjs} +69 -40
- package/dist/lib/browser/chunk-2CE2KPKZ.mjs.map +7 -0
- package/dist/lib/browser/chunk-43I2LR6O.mjs +216 -0
- package/dist/lib/browser/chunk-43I2LR6O.mjs.map +7 -0
- package/dist/lib/browser/chunk-5EGXHCAZ.mjs +16 -0
- package/dist/lib/browser/chunk-5EGXHCAZ.mjs.map +7 -0
- package/dist/lib/browser/chunk-5RICKAMN.mjs +18 -0
- package/dist/lib/browser/chunk-5RICKAMN.mjs.map +7 -0
- package/dist/lib/browser/chunk-CQ7UHYTT.mjs +296 -0
- package/dist/lib/browser/chunk-CQ7UHYTT.mjs.map +7 -0
- package/dist/lib/browser/{chunk-HRLMD35M.mjs → chunk-FP56WB24.mjs} +36 -15
- package/dist/lib/browser/chunk-FP56WB24.mjs.map +7 -0
- package/dist/lib/browser/chunk-JZRZVB2A.mjs +170 -0
- package/dist/lib/browser/chunk-JZRZVB2A.mjs.map +7 -0
- package/dist/lib/browser/chunk-WRJGOT5P.mjs +1794 -0
- package/dist/lib/browser/chunk-WRJGOT5P.mjs.map +7 -0
- package/dist/lib/browser/edge-model-resolver-O6OFYIO2.mjs +18 -0
- package/dist/lib/browser/edge-model-resolver-O6OFYIO2.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +127 -54
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/{intent-resolver-MVOIEJXZ.mjs → intent-resolver-3GOJMBXJ.mjs} +48 -15
- package/dist/lib/browser/intent-resolver-3GOJMBXJ.mjs.map +7 -0
- package/dist/lib/browser/local-model-resolver-GO6ZEMLL.mjs +17 -0
- package/dist/lib/browser/local-model-resolver-GO6ZEMLL.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-surface-4HXS3YLT.mjs → react-surface-FTKCE6GG.mjs} +20 -76
- package/dist/lib/browser/react-surface-FTKCE6GG.mjs.map +7 -0
- package/dist/lib/browser/{settings-G2EZXMWT.mjs → settings-HBF32KV6.mjs} +5 -5
- package/dist/lib/browser/{settings-G2EZXMWT.mjs.map → settings-HBF32KV6.mjs.map} +1 -1
- package/dist/lib/browser/state-LXTS54DI.mjs +21 -0
- package/dist/lib/browser/state-LXTS54DI.mjs.map +7 -0
- package/dist/lib/browser/toolkit-NQ2GXCF5.mjs +199 -0
- package/dist/lib/browser/toolkit-NQ2GXCF5.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +2 -2
- package/dist/lib/node-esm/{BlueprintContainer-VH4EE4CM.mjs → BlueprintContainer-4MKN6ZRB.mjs} +6 -7
- package/dist/lib/node-esm/{BlueprintContainer-VH4EE4CM.mjs.map → BlueprintContainer-4MKN6ZRB.mjs.map} +3 -3
- package/dist/lib/node-esm/ChatCompanion-XFNXVZIP.mjs +151 -0
- package/dist/lib/node-esm/ChatCompanion-XFNXVZIP.mjs.map +7 -0
- package/dist/lib/node-esm/{ChatContainer-D5FABDNE.mjs → ChatContainer-UTJGCQXF.mjs} +20 -23
- package/dist/lib/node-esm/ChatContainer-UTJGCQXF.mjs.map +7 -0
- package/dist/lib/node-esm/{ChatDialog-NKWVXHJP.mjs → ChatDialog-QEYZ4IOV.mjs} +12 -12
- package/dist/lib/node-esm/ChatDialog-QEYZ4IOV.mjs.map +7 -0
- package/dist/lib/node-esm/{SequenceContainer-EQ5NP2PG.mjs → SequenceContainer-PGGJUQ46.mjs} +6 -19
- package/dist/lib/node-esm/SequenceContainer-PGGJUQ46.mjs.map +7 -0
- package/dist/lib/node-esm/ai-service-MUYLV3NT.mjs +20 -0
- package/dist/lib/node-esm/ai-service-MUYLV3NT.mjs.map +7 -0
- package/dist/lib/node-esm/{app-graph-builder-RMOUJMMG.mjs → app-graph-builder-OKNLR7H2.mjs} +22 -34
- package/dist/lib/node-esm/app-graph-builder-OKNLR7H2.mjs.map +7 -0
- package/dist/lib/node-esm/blueprint-definition-WD2IVMAI.mjs +13 -0
- package/dist/lib/node-esm/blueprint-definition-WD2IVMAI.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-73ABYRYX.mjs +20 -0
- package/dist/lib/node-esm/chunk-73ABYRYX.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-DSE2IILK.mjs +217 -0
- package/dist/lib/node-esm/chunk-DSE2IILK.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-E2WXZND7.mjs +297 -0
- package/dist/lib/node-esm/chunk-E2WXZND7.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-HXIBCBH4.mjs +171 -0
- package/dist/lib/node-esm/chunk-HXIBCBH4.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-F7RXCX5Y.mjs → chunk-TNR46C3L.mjs} +36 -15
- package/dist/lib/node-esm/chunk-TNR46C3L.mjs.map +7 -0
- package/dist/lib/node-esm/{blueprint-definition-AEWYMW6I.mjs → chunk-U2NYUS2N.mjs} +69 -39
- package/dist/lib/node-esm/chunk-U2NYUS2N.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-UFKLCEAE.mjs +1795 -0
- package/dist/lib/node-esm/chunk-UFKLCEAE.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-X6AANUHZ.mjs → chunk-XQGWSZ4T.mjs} +4 -4
- package/dist/lib/node-esm/chunk-XQGWSZ4T.mjs.map +7 -0
- package/dist/lib/node-esm/edge-model-resolver-2ARXDOYS.mjs +19 -0
- package/dist/lib/node-esm/edge-model-resolver-2ARXDOYS.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +127 -54
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/{intent-resolver-DTDNCX3C.mjs → intent-resolver-6XLVTRDJ.mjs} +48 -15
- package/dist/lib/node-esm/intent-resolver-6XLVTRDJ.mjs.map +7 -0
- package/dist/lib/node-esm/local-model-resolver-WOQ2D2R2.mjs +18 -0
- package/dist/lib/node-esm/local-model-resolver-WOQ2D2R2.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-surface-V6JNEZVO.mjs → react-surface-K7ZXQLAP.mjs} +20 -76
- package/dist/lib/node-esm/react-surface-K7ZXQLAP.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-AIP5FOJG.mjs → settings-CWP6MTWP.mjs} +5 -5
- package/dist/lib/node-esm/{settings-AIP5FOJG.mjs.map → settings-CWP6MTWP.mjs.map} +1 -1
- package/dist/lib/node-esm/state-BO6GUFLB.mjs +22 -0
- package/dist/lib/node-esm/state-BO6GUFLB.mjs.map +7 -0
- package/dist/lib/node-esm/toolkit-V57PRJNG.mjs +200 -0
- package/dist/lib/node-esm/toolkit-V57PRJNG.mjs.map +7 -0
- package/dist/lib/node-esm/types/index.mjs +2 -2
- package/dist/types/src/AssistantPlugin.d.ts +1 -1
- package/dist/types/src/AssistantPlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/ai-service.d.ts +2 -3
- package/dist/types/src/capabilities/ai-service.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/capabilities/blueprint-definition.d.ts +5 -1
- package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -1
- package/dist/types/src/capabilities/capabilities.d.ts +8 -8
- package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
- package/dist/types/src/capabilities/edge-model-resolver.d.ts +2 -3
- package/dist/types/src/capabilities/edge-model-resolver.d.ts.map +1 -1
- package/dist/types/src/capabilities/index.d.ts +7 -4
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts +1 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
- package/dist/types/src/capabilities/local-model-resolver.d.ts +10 -0
- package/dist/types/src/capabilities/local-model-resolver.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface.d.ts +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
- package/dist/types/src/capabilities/settings.d.ts +1 -1
- package/dist/types/src/capabilities/state.d.ts +4 -0
- package/dist/types/src/capabilities/state.d.ts.map +1 -0
- package/dist/types/src/capabilities/toolkit.d.ts +2 -3
- package/dist/types/src/capabilities/toolkit.d.ts.map +1 -1
- package/dist/types/src/components/AssistantSettings/AssistantSettings.d.ts.map +1 -1
- package/dist/types/src/components/Chat/Chat.d.ts +16 -10
- package/dist/types/src/components/Chat/Chat.d.ts.map +1 -1
- package/dist/types/src/components/Chat/events.d.ts +5 -0
- package/dist/types/src/components/Chat/events.d.ts.map +1 -1
- package/dist/types/src/components/ChatCompanion.d.ts +13 -0
- package/dist/types/src/components/ChatCompanion.d.ts.map +1 -0
- package/dist/types/src/components/ChatContainer.d.ts +3 -4
- package/dist/types/src/components/ChatContainer.d.ts.map +1 -1
- package/dist/types/src/components/ChatProgress/ChatProgress.d.ts +7 -0
- package/dist/types/src/components/ChatProgress/ChatProgress.d.ts.map +1 -0
- package/dist/types/src/components/ChatProgress/index.d.ts +2 -0
- package/dist/types/src/components/ChatProgress/index.d.ts.map +1 -0
- package/dist/types/src/components/ChatPrompt/ChatActions.d.ts.map +1 -1
- package/dist/types/src/components/ChatPrompt/ChatOptions.d.ts +11 -4
- package/dist/types/src/components/ChatPrompt/ChatOptions.d.ts.map +1 -1
- package/dist/types/src/components/ChatPrompt/ChatPresets.d.ts.map +1 -1
- package/dist/types/src/components/ChatPrompt/ChatReferences.d.ts +3 -4
- package/dist/types/src/components/ChatPrompt/ChatReferences.d.ts.map +1 -1
- package/dist/types/src/components/ChatPrompt/ChatStatusIndicator.d.ts +6 -4
- package/dist/types/src/components/ChatPrompt/ChatStatusIndicator.d.ts.map +1 -1
- package/dist/types/src/components/ChatThread/ChatThread.d.ts +12 -7
- package/dist/types/src/components/ChatThread/ChatThread.d.ts.map +1 -1
- package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts +112 -56
- package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts.map +1 -1
- package/dist/types/src/components/ChatThread/Link.d.ts.map +1 -1
- package/dist/types/src/components/ChatThread/reducers.d.ts +40 -0
- package/dist/types/src/components/ChatThread/reducers.d.ts.map +1 -0
- package/dist/types/src/components/ChatThread/registry.d.ts +11 -0
- package/dist/types/src/components/ChatThread/registry.d.ts.map +1 -0
- package/dist/types/src/components/ChatThread/sync.d.ts +36 -0
- package/dist/types/src/components/ChatThread/sync.d.ts.map +1 -0
- package/dist/types/src/components/ChatThread/sync.test.d.ts +2 -0
- package/dist/types/src/components/ChatThread/sync.test.d.ts.map +1 -0
- package/dist/types/src/components/PromptSettings.d.ts.map +1 -1
- package/dist/types/src/components/SequenceContainer.d.ts.map +1 -1
- package/dist/types/src/components/SequenceEditor/SequenceEditor.d.ts +1 -1
- package/dist/types/src/components/SequenceEditor/SequenceEditor.d.ts.map +1 -1
- package/dist/types/src/components/SequenceEditor/SequenceEditor.stories.d.ts +264 -3
- package/dist/types/src/components/SequenceEditor/SequenceEditor.stories.d.ts.map +1 -1
- package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts +0 -5
- package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts.map +1 -1
- package/dist/types/src/components/TemplateEditor/TemplateEditor.stories.d.ts +262 -7
- package/dist/types/src/components/TemplateEditor/TemplateEditor.stories.d.ts.map +1 -1
- package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts +1 -1
- package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts.map +1 -1
- package/dist/types/src/components/TemplateEditor/TemplateForm.stories.d.ts +259 -2
- package/dist/types/src/components/TemplateEditor/TemplateForm.stories.d.ts.map +1 -1
- package/dist/types/src/components/TemplateEditor/handlebars-extension.d.ts +12 -0
- package/dist/types/src/components/TemplateEditor/handlebars-extension.d.ts.map +1 -0
- package/dist/types/src/components/ToolBlock/ToolBlock.d.ts +19 -0
- package/dist/types/src/components/ToolBlock/ToolBlock.d.ts.map +1 -0
- package/dist/types/src/components/ToolBlock/ToolBlockWidget.d.ts +2 -0
- package/dist/types/src/components/ToolBlock/ToolBlockWidget.d.ts.map +1 -0
- package/dist/types/src/components/ToolBlock/index.d.ts +3 -0
- package/dist/types/src/components/ToolBlock/index.d.ts.map +1 -0
- package/dist/types/src/components/Toolbar/Toolbar.d.ts +5 -0
- package/dist/types/src/components/Toolbar/Toolbar.d.ts.map +1 -0
- package/dist/types/src/components/Toolbar/index.d.ts +2 -0
- package/dist/types/src/components/Toolbar/index.d.ts.map +1 -0
- package/dist/types/src/components/Toolbar/useChatToolbarActions.d.ts +11 -0
- package/dist/types/src/components/Toolbar/useChatToolbarActions.d.ts.map +1 -0
- package/dist/types/src/components/Toolbox/Toolbox.d.ts +1 -3
- package/dist/types/src/components/Toolbox/Toolbox.d.ts.map +1 -1
- package/dist/types/src/components/Toolbox/Toolbox.stories.d.ts +263 -5
- package/dist/types/src/components/Toolbox/Toolbox.stories.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +4 -2
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/functions/analysis.d.ts.map +1 -1
- package/dist/types/src/functions/list.d.ts.map +1 -1
- package/dist/types/src/functions/load.d.ts +1 -1
- package/dist/types/src/functions/load.d.ts.map +1 -1
- package/dist/types/src/hooks/index.d.ts +4 -4
- package/dist/types/src/hooks/index.d.ts.map +1 -1
- package/dist/types/src/hooks/useBlueprintRegistry.d.ts +5 -1
- package/dist/types/src/hooks/useBlueprintRegistry.d.ts.map +1 -1
- package/dist/types/src/hooks/useChatProcessor.d.ts +4 -10
- package/dist/types/src/hooks/useChatProcessor.d.ts.map +1 -1
- package/dist/types/src/hooks/useChatServices.d.ts +5 -5
- package/dist/types/src/hooks/useChatServices.d.ts.map +1 -1
- package/dist/types/src/hooks/useContextBinder.d.ts +4 -0
- package/dist/types/src/hooks/useContextBinder.d.ts.map +1 -0
- package/dist/types/src/hooks/useContextObjects.d.ts +15 -0
- package/dist/types/src/hooks/useContextObjects.d.ts.map +1 -0
- package/dist/types/src/hooks/useFlush.d.ts.map +1 -0
- package/dist/types/src/hooks/useItemTypes.d.ts +4 -0
- package/dist/types/src/hooks/useItemTypes.d.ts.map +1 -0
- package/dist/types/src/hooks/usePresets.d.ts +2 -2
- package/dist/types/src/hooks/usePresets.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +2 -0
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts +1 -2
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/processor/index.d.ts +3 -0
- package/dist/types/src/processor/index.d.ts.map +1 -0
- package/dist/types/src/{hooks → processor}/presets.d.ts +1 -1
- package/dist/types/src/processor/presets.d.ts.map +1 -0
- package/dist/types/src/processor/processor.d.ts +74 -0
- package/dist/types/src/processor/processor.d.ts.map +1 -0
- package/dist/types/src/processor/processor.test.d.ts +2 -0
- package/dist/types/src/processor/processor.test.d.ts.map +1 -0
- package/dist/types/src/testing/index.d.ts +1 -1
- package/dist/types/src/testing/index.d.ts.map +1 -1
- package/dist/types/src/testing/test-generator.d.ts +7 -0
- package/dist/types/src/testing/test-generator.d.ts.map +1 -0
- package/dist/types/src/testing/test-sequence.d.ts +0 -4
- package/dist/types/src/testing/test-sequence.d.ts.map +1 -1
- package/dist/types/src/testing/test-services.d.ts +2 -2
- package/dist/types/src/testing/test-services.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +27 -16
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/Assistant.d.ts +16 -5
- package/dist/types/src/types/Assistant.d.ts.map +1 -1
- package/dist/types/src/types/AssistantAction.d.ts +23 -6
- package/dist/types/src/types/AssistantAction.d.ts.map +1 -1
- package/dist/types/src/types/service.d.ts +21 -18
- package/dist/types/src/types/service.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +90 -96
- package/src/AssistantPlugin.tsx +138 -116
- package/src/capabilities/ai-service.ts +6 -7
- package/src/capabilities/app-graph-builder.ts +39 -45
- package/src/capabilities/blueprint-definition.ts +51 -19
- package/src/capabilities/capabilities.ts +8 -12
- package/src/capabilities/edge-model-resolver.ts +17 -21
- package/src/capabilities/index.ts +5 -2
- package/src/capabilities/intent-resolver.ts +38 -15
- package/src/capabilities/local-model-resolver.ts +30 -0
- package/src/capabilities/react-surface.tsx +9 -63
- package/src/capabilities/state.ts +20 -0
- package/src/capabilities/toolkit.ts +93 -31
- package/src/components/AssistantSettings/AssistantSettings.tsx +82 -75
- package/src/components/BlueprintContainer.tsx +2 -2
- package/src/components/Chat/Chat.tsx +167 -172
- package/src/components/Chat/events.ts +7 -0
- package/src/components/ChatCompanion.tsx +136 -0
- package/src/components/ChatContainer.tsx +13 -31
- package/src/components/ChatDialog.tsx +11 -11
- package/src/components/ChatProgress/ChatProgress.tsx +67 -0
- package/src/components/ChatProgress/index.ts +5 -0
- package/src/components/ChatPrompt/ChatActions.tsx +10 -24
- package/src/components/ChatPrompt/ChatOptions.tsx +200 -34
- package/src/components/ChatPrompt/ChatPresets.tsx +1 -0
- package/src/components/ChatPrompt/ChatReferences.tsx +29 -36
- package/src/components/ChatPrompt/ChatStatusIndicator.tsx +25 -22
- package/src/components/ChatThread/ChatThread.stories.tsx +74 -205
- package/src/components/ChatThread/ChatThread.tsx +69 -29
- package/src/components/ChatThread/Link.tsx +8 -21
- package/src/components/ChatThread/reducers.ts +151 -0
- package/src/components/ChatThread/registry.tsx +184 -0
- package/src/components/ChatThread/sync.test.ts +81 -0
- package/src/components/ChatThread/sync.ts +113 -0
- package/src/components/PromptSettings.tsx +1 -0
- package/src/components/SequenceContainer.tsx +27 -29
- package/src/components/SequenceEditor/SequenceEditor.stories.tsx +8 -6
- package/src/components/SequenceEditor/SequenceEditor.tsx +2 -2
- package/src/components/TemplateEditor/TemplateEditor.stories.tsx +17 -13
- package/src/components/TemplateEditor/TemplateEditor.tsx +16 -50
- package/src/components/TemplateEditor/TemplateForm.stories.tsx +6 -8
- package/src/components/TemplateEditor/TemplateForm.tsx +2 -1
- package/src/components/TemplateEditor/handlebars-extension.ts +165 -0
- package/src/components/ToolBlock/ToolBlock.tsx +152 -0
- package/src/components/ToolBlock/ToolBlockWidget.tsx +5 -0
- package/src/components/ToolBlock/index.ts +6 -0
- package/src/components/Toolbar/Toolbar.tsx +21 -0
- package/src/components/{Timeline → Toolbar}/index.ts +1 -1
- package/src/components/Toolbar/useChatToolbarActions.ts +126 -0
- package/src/components/Toolbox/Toolbox.stories.tsx +9 -12
- package/src/components/Toolbox/Toolbox.tsx +10 -16
- package/src/components/index.ts +3 -1
- package/src/functions/analysis.ts +6 -4
- package/src/functions/list.ts +9 -3
- package/src/functions/load.ts +8 -5
- package/src/hooks/index.ts +4 -5
- package/src/hooks/useBlueprintRegistry.ts +24 -9
- package/src/hooks/useChatProcessor.ts +19 -26
- package/src/hooks/useChatServices.ts +30 -53
- package/src/hooks/useContextBinder.ts +30 -0
- package/src/hooks/useContextObjects.ts +58 -0
- package/src/hooks/useItemTypes.ts +37 -0
- package/src/hooks/usePresets.ts +4 -5
- package/src/index.ts +2 -0
- package/src/meta.ts +4 -6
- package/src/processor/index.ts +6 -0
- package/src/{hooks → processor}/presets.ts +10 -3
- package/src/processor/processor.test.ts +81 -0
- package/src/processor/processor.ts +302 -0
- package/src/queue-logger.ts +5 -5
- package/src/testing/index.ts +1 -1
- package/src/testing/test-generator.ts +261 -0
- package/src/testing/test-sequence.ts +1 -26
- package/src/testing/test-services.ts +2 -8
- package/src/translations.ts +29 -17
- package/src/types/Assistant.ts +9 -4
- package/src/types/AssistantAction.ts +11 -3
- package/src/types/service.ts +15 -7
- package/src/vite-env.d.ts +30 -0
- package/dist/lib/browser/ChatContainer-OUVSX5V5.mjs.map +0 -7
- package/dist/lib/browser/ChatDialog-P4FLEOHG.mjs.map +0 -7
- package/dist/lib/browser/SequenceContainer-627OQ557.mjs.map +0 -7
- package/dist/lib/browser/ai-service-7KJ5LXBT.mjs +0 -22
- package/dist/lib/browser/ai-service-7KJ5LXBT.mjs.map +0 -7
- package/dist/lib/browser/app-graph-builder-AVHHQ3KV.mjs.map +0 -7
- package/dist/lib/browser/blueprint-definition-CMGIZAOW.mjs.map +0 -7
- package/dist/lib/browser/chunk-BRLHDHOF.mjs +0 -244
- package/dist/lib/browser/chunk-BRLHDHOF.mjs.map +0 -7
- package/dist/lib/browser/chunk-HRLMD35M.mjs.map +0 -7
- package/dist/lib/browser/chunk-LKP65RPA.mjs +0 -20
- package/dist/lib/browser/chunk-LKP65RPA.mjs.map +0 -7
- package/dist/lib/browser/chunk-NZDCKQ6W.mjs +0 -89
- package/dist/lib/browser/chunk-NZDCKQ6W.mjs.map +0 -7
- package/dist/lib/browser/chunk-QB7OVS6Z.mjs +0 -16
- package/dist/lib/browser/chunk-QB7OVS6Z.mjs.map +0 -7
- package/dist/lib/browser/chunk-VEBVAHNM.mjs +0 -2231
- package/dist/lib/browser/chunk-VEBVAHNM.mjs.map +0 -7
- package/dist/lib/browser/edge-model-resolver-2HB4PCWH.mjs +0 -24
- package/dist/lib/browser/edge-model-resolver-2HB4PCWH.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-MVOIEJXZ.mjs.map +0 -7
- package/dist/lib/browser/react-surface-4HXS3YLT.mjs.map +0 -7
- package/dist/lib/browser/toolkit-IW4FBLLB.mjs +0 -105
- package/dist/lib/browser/toolkit-IW4FBLLB.mjs.map +0 -7
- package/dist/lib/node-esm/ChatContainer-D5FABDNE.mjs.map +0 -7
- package/dist/lib/node-esm/ChatDialog-NKWVXHJP.mjs.map +0 -7
- package/dist/lib/node-esm/SequenceContainer-EQ5NP2PG.mjs.map +0 -7
- package/dist/lib/node-esm/ai-service-LDD32477.mjs +0 -23
- package/dist/lib/node-esm/ai-service-LDD32477.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-builder-RMOUJMMG.mjs.map +0 -7
- package/dist/lib/node-esm/blueprint-definition-AEWYMW6I.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-3SOC5GOP.mjs +0 -2232
- package/dist/lib/node-esm/chunk-3SOC5GOP.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-F7RXCX5Y.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-GAWXJ7K5.mjs +0 -90
- package/dist/lib/node-esm/chunk-GAWXJ7K5.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-KOC6ESG7.mjs +0 -22
- package/dist/lib/node-esm/chunk-KOC6ESG7.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-RD755HN3.mjs +0 -245
- package/dist/lib/node-esm/chunk-RD755HN3.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-X6AANUHZ.mjs.map +0 -7
- package/dist/lib/node-esm/edge-model-resolver-UDDR2IA6.mjs +0 -25
- package/dist/lib/node-esm/edge-model-resolver-UDDR2IA6.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-DTDNCX3C.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-V6JNEZVO.mjs.map +0 -7
- package/dist/lib/node-esm/toolkit-2VNUL77B.mjs +0 -106
- package/dist/lib/node-esm/toolkit-2VNUL77B.mjs.map +0 -7
- package/dist/types/src/components/ChatThread/ChatMessage.d.ts +0 -18
- package/dist/types/src/components/ChatThread/ChatMessage.d.ts.map +0 -1
- package/dist/types/src/components/ChatThread/ToolBlock.d.ts +0 -19
- package/dist/types/src/components/ChatThread/ToolBlock.d.ts.map +0 -1
- package/dist/types/src/components/ChatThread/reducer.d.ts +0 -12
- package/dist/types/src/components/ChatThread/reducer.d.ts.map +0 -1
- package/dist/types/src/components/Timeline/Timeline.d.ts +0 -24
- package/dist/types/src/components/Timeline/Timeline.d.ts.map +0 -1
- package/dist/types/src/components/Timeline/Timeline.stories.d.ts +0 -9
- package/dist/types/src/components/Timeline/Timeline.stories.d.ts.map +0 -1
- package/dist/types/src/components/Timeline/index.d.ts +0 -2
- package/dist/types/src/components/Timeline/index.d.ts.map +0 -1
- package/dist/types/src/hooks/chat-processor.d.ts +0 -72
- package/dist/types/src/hooks/chat-processor.d.ts.map +0 -1
- package/dist/types/src/hooks/errors.d.ts +0 -4
- package/dist/types/src/hooks/errors.d.ts.map +0 -1
- package/dist/types/src/hooks/presets.d.ts.map +0 -1
- package/dist/types/src/hooks/useResolveRef.d.ts +0 -4
- package/dist/types/src/hooks/useResolveRef.d.ts.map +0 -1
- package/dist/types/src/parser/filter-generator.d.ts +0 -4
- package/dist/types/src/parser/filter-generator.d.ts.map +0 -1
- package/dist/types/src/parser/filter-generator.test.d.ts +0 -2
- package/dist/types/src/parser/filter-generator.test.d.ts.map +0 -1
- package/dist/types/src/parser/index.d.ts +0 -4
- package/dist/types/src/parser/index.d.ts.map +0 -1
- package/dist/types/src/parser/query-parser.d.ts +0 -15
- package/dist/types/src/parser/query-parser.d.ts.map +0 -1
- package/dist/types/src/parser/query-parser.test.d.ts +0 -2
- package/dist/types/src/parser/query-parser.test.d.ts.map +0 -1
- package/dist/types/src/parser/types.d.ts +0 -24
- package/dist/types/src/parser/types.d.ts.map +0 -1
- package/dist/types/src/stories/Chat.stories.d.ts +0 -268
- package/dist/types/src/stories/Chat.stories.d.ts.map +0 -1
- package/dist/types/src/stories/components/BlueprintContainer.d.ts +0 -5
- package/dist/types/src/stories/components/BlueprintContainer.d.ts.map +0 -1
- package/dist/types/src/stories/components/ChatContainer.d.ts +0 -5
- package/dist/types/src/stories/components/ChatContainer.d.ts.map +0 -1
- package/dist/types/src/stories/components/GraphContainer.d.ts +0 -6
- package/dist/types/src/stories/components/GraphContainer.d.ts.map +0 -1
- package/dist/types/src/stories/components/LoggingContainer.d.ts +0 -5
- package/dist/types/src/stories/components/LoggingContainer.d.ts.map +0 -1
- package/dist/types/src/stories/components/SurfaceContainer.d.ts +0 -8
- package/dist/types/src/stories/components/SurfaceContainer.d.ts.map +0 -1
- package/dist/types/src/stories/components/TasksContainer.d.ts +0 -5
- package/dist/types/src/stories/components/TasksContainer.d.ts.map +0 -1
- package/dist/types/src/stories/components/index.d.ts +0 -8
- package/dist/types/src/stories/components/index.d.ts.map +0 -1
- package/dist/types/src/stories/components/types.d.ts +0 -7
- package/dist/types/src/stories/components/types.d.ts.map +0 -1
- package/dist/types/src/stories/hooks/index.d.ts +0 -3
- package/dist/types/src/stories/hooks/index.d.ts.map +0 -1
- package/dist/types/src/stories/hooks/useFlush.d.ts.map +0 -1
- package/dist/types/src/stories/hooks/useMatcherExtension.d.ts +0 -3
- package/dist/types/src/stories/hooks/useMatcherExtension.d.ts.map +0 -1
- package/dist/types/src/stories/testing/data.d.ts +0 -142
- package/dist/types/src/stories/testing/data.d.ts.map +0 -1
- package/dist/types/src/stories/testing/index.d.ts +0 -3
- package/dist/types/src/stories/testing/index.d.ts.map +0 -1
- package/dist/types/src/stories/testing/testing.d.ts +0 -26
- package/dist/types/src/stories/testing/testing.d.ts.map +0 -1
- package/dist/types/src/testing/test-functions.d.ts +0 -6
- package/dist/types/src/testing/test-functions.d.ts.map +0 -1
- package/dist/types/src/tools/function.d.ts +0 -5
- package/dist/types/src/tools/function.d.ts.map +0 -1
- package/dist/types/src/tools/index.d.ts +0 -3
- package/dist/types/src/tools/index.d.ts.map +0 -1
- package/dist/types/src/tools/openapi.d.ts +0 -10
- package/dist/types/src/tools/openapi.d.ts.map +0 -1
- package/dist/types/src/tools/openapi.test.d.ts +0 -2
- package/dist/types/src/tools/openapi.test.d.ts.map +0 -1
- package/src/components/ChatThread/ChatMessage.tsx +0 -282
- package/src/components/ChatThread/ToolBlock.tsx +0 -125
- package/src/components/ChatThread/reducer.ts +0 -52
- package/src/components/Timeline/Timeline.stories.tsx +0 -53
- package/src/components/Timeline/Timeline.tsx +0 -159
- package/src/hooks/chat-processor.ts +0 -260
- package/src/hooks/errors.ts +0 -8
- package/src/hooks/useResolveRef.ts +0 -33
- package/src/parser/filter-generator.test.ts +0 -32
- package/src/parser/filter-generator.ts +0 -74
- package/src/parser/index.ts +0 -7
- package/src/parser/query-parser.test.ts +0 -139
- package/src/parser/query-parser.ts +0 -199
- package/src/parser/types.ts +0 -34
- package/src/shims.d.ts +0 -8
- package/src/stories/Chat.stories.tsx +0 -317
- package/src/stories/components/BlueprintContainer.tsx +0 -34
- package/src/stories/components/ChatContainer.tsx +0 -80
- package/src/stories/components/GraphContainer.tsx +0 -118
- package/src/stories/components/LoggingContainer.tsx +0 -22
- package/src/stories/components/SurfaceContainer.tsx +0 -62
- package/src/stories/components/TasksContainer.tsx +0 -51
- package/src/stories/components/index.ts +0 -12
- package/src/stories/components/types.ts +0 -11
- package/src/stories/hooks/index.ts +0 -6
- package/src/stories/hooks/useMatcherExtension.ts +0 -45
- package/src/stories/testing/data.ts +0 -130
- package/src/stories/testing/index.ts +0 -6
- package/src/stories/testing/testing.tsx +0 -162
- package/src/testing/test-functions.ts +0 -16
- package/src/tools/function.ts +0 -49
- package/src/tools/index.ts +0 -6
- package/src/tools/openapi.test.ts +0 -219
- package/src/tools/openapi.ts +0 -341
- package/src/typings.d.ts +0 -9
- /package/dist/types/src/{stories/hooks → hooks}/useFlush.d.ts +0 -0
- /package/src/{stories/hooks → hooks}/useFlush.ts +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/app-graph-builder.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Rx } from '@effect-rx/rx-react';\nimport * as Function from 'effect/Function';\nimport * as Option from 'effect/Option';\n\nimport {\n Capabilities,\n LayoutAction,\n type PluginContext,\n type PromiseIntentDispatcher,\n contributes,\n createIntent,\n} from '@dxos/app-framework';\nimport { Sequence } from '@dxos/conductor';\nimport { Obj } from '@dxos/echo';\nimport { invariant } from '@dxos/invariant';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { ATTENDABLE_PATH_SEPARATOR, PLANK_COMPANION_TYPE } from '@dxos/plugin-deck/types';\nimport { ROOT_ID, createExtension, rxFromSignal } from '@dxos/plugin-graph';\nimport { getActiveSpace } from '@dxos/plugin-space';\nimport { SpaceAction } from '@dxos/plugin-space/types';\nimport { Query, type Space, fullyQualifiedId } from '@dxos/react-client/echo';\n\nimport { ASSISTANT_DIALOG, meta } from '../meta';\nimport { Assistant, AssistantAction } from '../types';\n\nimport { AssistantCapabilities } from './capabilities';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.AppGraphBuilder, [\n createExtension({\n id: `${meta.id}/assistant`,\n actions: (node) =>\n Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => (node.id === ROOT_ID ? Option.some(node) : Option.none())),\n Option.map(() => [\n {\n id: `${LayoutAction.UpdateDialog._tag}/assistant/open`,\n data: async () => {\n const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n const client = context.getCapability(ClientCapabilities.Client);\n const space = getActiveSpace(context) ?? client.spaces.default;\n const chat = await getOrCreateChat(dispatch, space);\n if (!chat) {\n return;\n }\n\n await dispatch(\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: ASSISTANT_DIALOG,\n options: {\n state: true,\n blockAlign: 'end',\n props: {\n chat,\n },\n },\n }),\n );\n },\n properties: {\n label: ['open assistant label', { ns: meta.id }],\n icon: 'ph--sparkle--regular',\n disposition: 'pin-end',\n position: 'hoist',\n keyBinding: {\n macos: 'shift+meta+k',\n windows: 'shift+ctrl+k',\n },\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n\n createExtension({\n id: `${meta.id}/companion-chat`,\n connector: (node) => {\n return Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => (Obj.isObject(node.data) ? Option.some(node.data) : Option.none())),\n Option.map((object) => {\n const currentChat = get(\n rxFromSignal(\n () => context.getCapability(AssistantCapabilities.State).currentChat[fullyQualifiedId(object)],\n ),\n );\n\n return [\n {\n id: [fullyQualifiedId(object), 'assistant-chat'].join(ATTENDABLE_PATH_SEPARATOR),\n type: PLANK_COMPANION_TYPE,\n data: currentChat ?? 'assistant-chat',\n properties: {\n label: ['assistant chat label', { ns: meta.id }],\n icon: 'ph--sparkle--regular',\n position: 'hoist',\n disposition: 'hidden',\n },\n },\n ];\n }),\n Option.getOrElse(() => []),\n ),\n );\n },\n }),\n\n createExtension({\n id: `${meta.id}/sequence-logs`,\n connector: (node) =>\n Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => (Obj.instanceOf(Sequence, node.data) ? Option.some(node) : Option.none())),\n Option.map((node) => [\n {\n id: [node.id, 'logs'].join(ATTENDABLE_PATH_SEPARATOR),\n type: PLANK_COMPANION_TYPE,\n data: 'logs',\n properties: {\n label: ['sequence logs label', { ns: meta.id }],\n icon: 'ph--clock-countdown--regular',\n disposition: 'hidden',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n ]);\n\n// TODO(burdon): Factor out.\nconst getOrCreateChat = async (\n dispatch: PromiseIntentDispatcher,\n space: Space,\n): Promise<Assistant.Chat | undefined> => {\n // TODO(wittjosiah): This should be possible with a single query.\n const { objects: allChats } = await space.db.query(Query.type(Assistant.Chat)).run();\n const { objects: relatedChats } = await space.db\n .query(Query.type(Assistant.Chat).sourceOf(Assistant.CompanionTo).source())\n .run();\n\n const chats = allChats.filter((chat) => !relatedChats.includes(chat));\n if (chats.length > 0) {\n return chats.at(-1);\n }\n\n const { data } = await dispatch(createIntent(AssistantAction.CreateChat, { space }));\n invariant(Obj.instanceOf(Assistant.Chat, data?.object));\n await dispatch(createIntent(SpaceAction.AddObject, { target: space, object: data.object }));\n return data.object;\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Rx", "Function", "Option", "Capabilities", "LayoutAction", "contributes", "createIntent", "Sequence", "Obj", "invariant", "ClientCapabilities", "ATTENDABLE_PATH_SEPARATOR", "PLANK_COMPANION_TYPE", "ROOT_ID", "createExtension", "rxFromSignal", "getActiveSpace", "SpaceAction", "Query", "fullyQualifiedId", "context", "contributes", "Capabilities", "AppGraphBuilder", "createExtension", "id", "meta", "actions", "node", "Rx", "make", "get", "pipe", "flatMap", "ROOT_ID", "some", "none", "map", "LayoutAction", "UpdateDialog", "_tag", "data", "dispatchPromise", "dispatch", "getCapability", "IntentDispatcher", "client", "ClientCapabilities", "Client", "space", "getActiveSpace", "spaces", "default", "chat", "getOrCreateChat", "createIntent", "part", "subject", "ASSISTANT_DIALOG", "options", "state", "blockAlign", "props", "properties", "label", "ns", "icon", "disposition", "position", "keyBinding", "macos", "windows", "getOrElse", "connector", "Obj", "isObject", "object", "currentChat", "rxFromSignal", "AssistantCapabilities", "State", "fullyQualifiedId", "join", "ATTENDABLE_PATH_SEPARATOR", "type", "PLANK_COMPANION_TYPE", "instanceOf", "Sequence", "objects", "allChats", "db", "query", "Query", "Assistant", "Chat", "run", "relatedChats", "sourceOf", "CompanionTo", "source", "chats", "filter", "includes", "length", "at", "AssistantAction", "CreateChat", "invariant", "SpaceAction", "AddObject", "target"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
BLUEPRINT_KEY,
|
|
4
|
+
blueprint_definition_default,
|
|
5
|
+
createBlueprint
|
|
6
|
+
} from "./chunk-U2NYUS2N.mjs";
|
|
7
|
+
import "./chunk-HSLMI22Q.mjs";
|
|
8
|
+
export {
|
|
9
|
+
BLUEPRINT_KEY,
|
|
10
|
+
createBlueprint,
|
|
11
|
+
blueprint_definition_default as default
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=blueprint-definition-WD2IVMAI.mjs.map
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
|
|
3
|
+
// src/meta.ts
|
|
4
|
+
var meta = {
|
|
5
|
+
id: "dxos.org/plugin/assistant",
|
|
6
|
+
name: "Assistant",
|
|
7
|
+
description: "The Assistant plugin allows you to chat with your spaces inside of Composer.",
|
|
8
|
+
icon: "ph--atom--regular",
|
|
9
|
+
source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-assistant",
|
|
10
|
+
tags: [
|
|
11
|
+
"labs"
|
|
12
|
+
]
|
|
13
|
+
};
|
|
14
|
+
var ASSISTANT_DIALOG = `${meta.id}/assistant/dialog`;
|
|
15
|
+
|
|
16
|
+
export {
|
|
17
|
+
meta,
|
|
18
|
+
ASSISTANT_DIALOG
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=chunk-73ABYRYX.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/meta.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\n\nexport const meta: PluginMeta = {\n id: 'dxos.org/plugin/assistant',\n name: 'Assistant',\n description: 'The Assistant plugin allows you to chat with your spaces inside of Composer.',\n icon: 'ph--atom--regular',\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-assistant',\n tags: ['labs'],\n};\n\nexport const ASSISTANT_DIALOG = `${meta.id}/assistant/dialog`;\n"],
|
|
5
|
+
"mappings": ";;;AAMO,IAAMA,OAAmB;EAC9BC,IAAI;EACJC,MAAM;EACNC,aAAa;EACbC,MAAM;EACNC,QAAQ;EACRC,MAAM;IAAC;;AACT;AAEO,IAAMC,mBAAmB,GAAGP,KAAKC,EAAE;",
|
|
6
|
+
"names": ["meta", "id", "name", "description", "icon", "source", "tags", "ASSISTANT_DIALOG"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
meta
|
|
4
|
+
} from "./chunk-73ABYRYX.mjs";
|
|
5
|
+
|
|
6
|
+
// src/components/TemplateEditor/TemplateEditor.tsx
|
|
7
|
+
import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
|
|
8
|
+
import React from "react";
|
|
9
|
+
import { createDocAccessor } from "@dxos/react-client/echo";
|
|
10
|
+
import { useThemeContext, useTranslation } from "@dxos/react-ui";
|
|
11
|
+
import { createBasicExtensions, createDataExtensions, createMarkdownExtensions, createThemeExtensions, decorateMarkdown, useTextEditor } from "@dxos/react-ui-editor";
|
|
12
|
+
import { mx } from "@dxos/react-ui-theme";
|
|
13
|
+
import { isTruthy } from "@dxos/util";
|
|
14
|
+
|
|
15
|
+
// src/components/TemplateEditor/handlebars-extension.ts
|
|
16
|
+
import { autocompletion, completionKeymap } from "@codemirror/autocomplete";
|
|
17
|
+
import { Decoration, ViewPlugin, keymap } from "@codemirror/view";
|
|
18
|
+
function _define_property(obj, key, value) {
|
|
19
|
+
if (key in obj) {
|
|
20
|
+
Object.defineProperty(obj, key, {
|
|
21
|
+
value,
|
|
22
|
+
enumerable: true,
|
|
23
|
+
configurable: true,
|
|
24
|
+
writable: true
|
|
25
|
+
});
|
|
26
|
+
} else {
|
|
27
|
+
obj[key] = value;
|
|
28
|
+
}
|
|
29
|
+
return obj;
|
|
30
|
+
}
|
|
31
|
+
var handlebars = (_ = {}) => {
|
|
32
|
+
return [
|
|
33
|
+
handlebarsHighlightPlugin,
|
|
34
|
+
autocompletion({
|
|
35
|
+
activateOnTyping: true,
|
|
36
|
+
aboveCursor: true,
|
|
37
|
+
closeOnBlur: true,
|
|
38
|
+
override: [
|
|
39
|
+
handlebarsCompletions
|
|
40
|
+
]
|
|
41
|
+
}),
|
|
42
|
+
keymap.of(completionKeymap)
|
|
43
|
+
];
|
|
44
|
+
};
|
|
45
|
+
var regex = {
|
|
46
|
+
comment: /\{\{!\s*[^}]*\}\}/g,
|
|
47
|
+
brackets: /\{\{[^}]*\}\}/g,
|
|
48
|
+
command: /\{\{[#/]([^}]+)\}\}/g,
|
|
49
|
+
var: /\{\{(?!\s*!)(\w[^}]*)\}\}/g
|
|
50
|
+
};
|
|
51
|
+
var handlebarsHighlightPlugin = ViewPlugin.fromClass(class {
|
|
52
|
+
buildDecorations(view) {
|
|
53
|
+
const widgets = [];
|
|
54
|
+
for (const { from, to } of view.visibleRanges) {
|
|
55
|
+
const text = view.state.doc.sliceString(from, to);
|
|
56
|
+
{
|
|
57
|
+
let match;
|
|
58
|
+
while ((match = regex.comment.exec(text)) !== null) {
|
|
59
|
+
const start = from + match.index;
|
|
60
|
+
const end = start + match[0].length;
|
|
61
|
+
widgets.push(Decoration.mark({
|
|
62
|
+
class: "text-subdued"
|
|
63
|
+
}).range(start, end));
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
{
|
|
67
|
+
let match;
|
|
68
|
+
while ((match = regex.brackets.exec(text)) !== null) {
|
|
69
|
+
const start = from + match.index;
|
|
70
|
+
const end = start + match[0].length;
|
|
71
|
+
widgets.push(Decoration.mark({
|
|
72
|
+
class: "text-subdued"
|
|
73
|
+
}).range(start, end));
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
{
|
|
77
|
+
let match;
|
|
78
|
+
while ((match = regex.command.exec(text)) !== null) {
|
|
79
|
+
const start = from + match.index + 2;
|
|
80
|
+
let end = start + match[0].length - 4;
|
|
81
|
+
const text2 = view.state.doc.sliceString(start, end);
|
|
82
|
+
const parts = text2.split(/\s+/);
|
|
83
|
+
if (parts.length > 1) {
|
|
84
|
+
const idx = start + parts[0].length;
|
|
85
|
+
widgets.push(Decoration.mark({
|
|
86
|
+
class: "text-greenText"
|
|
87
|
+
}).range(idx, end));
|
|
88
|
+
end = idx;
|
|
89
|
+
}
|
|
90
|
+
widgets.push(Decoration.mark({
|
|
91
|
+
class: "text-blueText"
|
|
92
|
+
}).range(start, end));
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
{
|
|
96
|
+
let match;
|
|
97
|
+
while ((match = regex.var.exec(text)) !== null) {
|
|
98
|
+
const start = from + match.index + 2;
|
|
99
|
+
const end = start + match[0].length - 4;
|
|
100
|
+
widgets.push(Decoration.mark({
|
|
101
|
+
class: "text-greenText"
|
|
102
|
+
}).range(start, end));
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
widgets.sort((a, b) => a.from - b.from || a.startSide - b.startSide);
|
|
107
|
+
return Decoration.set(widgets);
|
|
108
|
+
}
|
|
109
|
+
update(update) {
|
|
110
|
+
if (update.docChanged || update.viewportChanged) {
|
|
111
|
+
this.decorations = this.buildDecorations(update.view);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
constructor(view) {
|
|
115
|
+
_define_property(this, "decorations", void 0);
|
|
116
|
+
this.decorations = this.buildDecorations(view);
|
|
117
|
+
}
|
|
118
|
+
}, {
|
|
119
|
+
decorations: (v) => v.decorations
|
|
120
|
+
});
|
|
121
|
+
var variables = [
|
|
122
|
+
"this"
|
|
123
|
+
];
|
|
124
|
+
var commands = [
|
|
125
|
+
"this",
|
|
126
|
+
"each",
|
|
127
|
+
"if",
|
|
128
|
+
"unless",
|
|
129
|
+
"with"
|
|
130
|
+
];
|
|
131
|
+
function handlebarsCompletions(context) {
|
|
132
|
+
const match = context.matchBefore(/\{\{[^}]*/);
|
|
133
|
+
if (!match || match.from === match.to) {
|
|
134
|
+
return null;
|
|
135
|
+
}
|
|
136
|
+
let type = "variable";
|
|
137
|
+
let text = match.text.slice(2);
|
|
138
|
+
let from = match.from + 2;
|
|
139
|
+
let matches = [];
|
|
140
|
+
if (text.startsWith("#") || text.startsWith("/")) {
|
|
141
|
+
const idx = text.lastIndexOf(" ");
|
|
142
|
+
if (idx !== -1) {
|
|
143
|
+
type = "variable";
|
|
144
|
+
matches = variables;
|
|
145
|
+
text = text.slice(idx + 1);
|
|
146
|
+
from += idx + 1;
|
|
147
|
+
} else {
|
|
148
|
+
type = "command";
|
|
149
|
+
text = text.slice(1);
|
|
150
|
+
matches = commands;
|
|
151
|
+
from += 1;
|
|
152
|
+
}
|
|
153
|
+
} else {
|
|
154
|
+
type = "variable";
|
|
155
|
+
matches = variables;
|
|
156
|
+
}
|
|
157
|
+
const options = matches.filter((name) => name.startsWith(text)).map((name) => ({
|
|
158
|
+
type,
|
|
159
|
+
label: name
|
|
160
|
+
}));
|
|
161
|
+
return {
|
|
162
|
+
from,
|
|
163
|
+
options
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
// src/components/TemplateEditor/TemplateEditor.tsx
|
|
168
|
+
var TemplateEditor = ({ id, classNames, template }) => {
|
|
169
|
+
var _effect = _useSignals();
|
|
170
|
+
try {
|
|
171
|
+
const { t } = useTranslation(meta.id);
|
|
172
|
+
const { themeMode } = useThemeContext();
|
|
173
|
+
const { parentRef } = useTextEditor(() => {
|
|
174
|
+
const text = template.source?.target;
|
|
175
|
+
if (!text) {
|
|
176
|
+
return {};
|
|
177
|
+
}
|
|
178
|
+
return {
|
|
179
|
+
initialValue: text.content ?? "",
|
|
180
|
+
extensions: [
|
|
181
|
+
createDataExtensions({
|
|
182
|
+
id,
|
|
183
|
+
text: createDocAccessor(text, [
|
|
184
|
+
"content"
|
|
185
|
+
])
|
|
186
|
+
}),
|
|
187
|
+
createBasicExtensions({
|
|
188
|
+
bracketMatching: false,
|
|
189
|
+
lineNumbers: true,
|
|
190
|
+
lineWrapping: true,
|
|
191
|
+
placeholder: t("template placeholder")
|
|
192
|
+
}),
|
|
193
|
+
createThemeExtensions({
|
|
194
|
+
themeMode
|
|
195
|
+
}),
|
|
196
|
+
createMarkdownExtensions(),
|
|
197
|
+
decorateMarkdown(),
|
|
198
|
+
handlebars()
|
|
199
|
+
].filter(isTruthy)
|
|
200
|
+
};
|
|
201
|
+
}, [
|
|
202
|
+
themeMode,
|
|
203
|
+
template.source?.target
|
|
204
|
+
]);
|
|
205
|
+
return /* @__PURE__ */ React.createElement("div", {
|
|
206
|
+
ref: parentRef,
|
|
207
|
+
className: mx("bs-full overflow-hidden", classNames)
|
|
208
|
+
});
|
|
209
|
+
} finally {
|
|
210
|
+
_effect.f();
|
|
211
|
+
}
|
|
212
|
+
};
|
|
213
|
+
|
|
214
|
+
export {
|
|
215
|
+
TemplateEditor
|
|
216
|
+
};
|
|
217
|
+
//# sourceMappingURL=chunk-DSE2IILK.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/components/TemplateEditor/TemplateEditor.tsx", "../../../src/components/TemplateEditor/handlebars-extension.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type Template } from '@dxos/blueprints';\nimport { createDocAccessor } from '@dxos/react-client/echo';\nimport { type ThemedClassName, useThemeContext, useTranslation } from '@dxos/react-ui';\nimport {\n createBasicExtensions,\n createDataExtensions,\n createMarkdownExtensions,\n createThemeExtensions,\n decorateMarkdown,\n useTextEditor,\n} from '@dxos/react-ui-editor';\nimport { mx } from '@dxos/react-ui-theme';\nimport { isTruthy } from '@dxos/util';\n\nimport { meta } from '../../meta';\n\nimport { handlebars } from './handlebars-extension';\n\nexport type TemplateEditorProps = ThemedClassName<{\n id: string;\n template: Template.Template;\n}>;\n\nexport const TemplateEditor = ({ id, classNames, template }: TemplateEditorProps) => {\n const { t } = useTranslation(meta.id);\n const { themeMode } = useThemeContext();\n const { parentRef } = useTextEditor(() => {\n const text = template.source?.target;\n if (!text) {\n return {};\n }\n\n return {\n initialValue: text.content ?? '',\n extensions: [\n createDataExtensions({ id, text: createDocAccessor(text, ['content']) }),\n createBasicExtensions({\n bracketMatching: false,\n lineNumbers: true,\n lineWrapping: true,\n placeholder: t('template placeholder'),\n }),\n createThemeExtensions({ themeMode }),\n createMarkdownExtensions(),\n decorateMarkdown(),\n handlebars(),\n ].filter(isTruthy),\n };\n }, [themeMode, template.source?.target]);\n\n return <div ref={parentRef} className={mx('bs-full overflow-hidden', classNames)} />;\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport {\n type CompletionContext,\n type CompletionResult,\n autocompletion,\n completionKeymap,\n} from '@codemirror/autocomplete';\nimport { type Extension } from '@codemirror/state';\nimport { Decoration, type DecorationSet, type EditorView, ViewPlugin, type ViewUpdate, keymap } from '@codemirror/view';\n\nexport type HandlebarsOptions = {};\n\n/**\n * Simple Handlebars plugin for CodeMirror.\n * Supports:\n * - Comments: {{! comment }}\n * - Commands: {{#command}} {{/command}}\n * - Variables: {{var}}\n * - Commands with variables: {{#each items}} {{/each}}\n */\nexport const handlebars = (_: HandlebarsOptions = {}): Extension => {\n return [\n handlebarsHighlightPlugin,\n autocompletion({\n activateOnTyping: true,\n aboveCursor: true,\n closeOnBlur: true,\n override: [handlebarsCompletions],\n }),\n keymap.of(completionKeymap),\n ];\n};\n\nconst regex = {\n comment: /\\{\\{!\\s*[^}]*\\}\\}/g,\n brackets: /\\{\\{[^}]*\\}\\}/g,\n command: /\\{\\{[#/]([^}]+)\\}\\}/g,\n var: /\\{\\{(?!\\s*!)(\\w[^}]*)\\}\\}/g,\n};\n\n/**\n * ViewPlugin that decorates Handlebars syntax.\n */\nconst handlebarsHighlightPlugin = ViewPlugin.fromClass(\n class {\n decorations: DecorationSet;\n\n constructor(view: EditorView) {\n this.decorations = this.buildDecorations(view);\n }\n\n buildDecorations(view: EditorView) {\n const widgets: any[] = [];\n\n for (const { from, to } of view.visibleRanges) {\n const text = view.state.doc.sliceString(from, to);\n\n // Match comments: {{! comment }}\n {\n let match;\n while ((match = regex.comment.exec(text)) !== null) {\n const start = from + match.index;\n const end = start + match[0].length;\n widgets.push(Decoration.mark({ class: 'text-subdued' }).range(start, end));\n }\n }\n\n // Match brackets: {{ and }}\n {\n let match;\n while ((match = regex.brackets.exec(text)) !== null) {\n const start = from + match.index;\n const end = start + match[0].length;\n widgets.push(Decoration.mark({ class: 'text-subdued' }).range(start, end));\n }\n }\n\n // Match commands: {{#command}} and {{/command}}\n {\n let match;\n while ((match = regex.command.exec(text)) !== null) {\n const start = from + match.index + 2;\n let end = start + match[0].length - 4;\n const text = view.state.doc.sliceString(start, end);\n const parts = text.split(/\\s+/);\n if (parts.length > 1) {\n const idx = start + parts[0].length;\n widgets.push(Decoration.mark({ class: 'text-greenText' }).range(idx, end));\n end = idx;\n }\n widgets.push(Decoration.mark({ class: 'text-blueText' }).range(start, end));\n }\n }\n\n // Match variables: {{var}}\n {\n let match;\n while ((match = regex.var.exec(text)) !== null) {\n const start = from + match.index + 2;\n const end = start + match[0].length - 4;\n widgets.push(Decoration.mark({ class: 'text-greenText' }).range(start, end));\n }\n }\n }\n\n // Sort decorations by position to avoid \"Ranges must be added sorted\" error.\n widgets.sort((a, b) => a.from - b.from || a.startSide - b.startSide);\n return Decoration.set(widgets);\n }\n\n update(update: ViewUpdate) {\n if (update.docChanged || update.viewportChanged) {\n this.decorations = this.buildDecorations(update.view);\n }\n }\n },\n {\n decorations: (v) => v.decorations,\n },\n);\n\n// TODO(burdon): Pass in variables.\nconst variables = ['this'];\nconst commands = ['this', 'each', 'if', 'unless', 'with'];\n\n/**\n * Provides completions for Handlebars variables.\n */\nfunction handlebarsCompletions(context: CompletionContext): CompletionResult | null {\n const match = context.matchBefore(/\\{\\{[^}]*/);\n if (!match || match.from === match.to) {\n return null;\n }\n\n let type = 'variable';\n let text = match.text.slice(2);\n let from = match.from + 2;\n let matches = [];\n if (text.startsWith('#') || text.startsWith('/')) {\n const idx = text.lastIndexOf(' ');\n if (idx !== -1) {\n type = 'variable';\n matches = variables;\n text = text.slice(idx + 1);\n from += idx + 1;\n } else {\n type = 'command';\n text = text.slice(1);\n matches = commands;\n from += 1;\n }\n } else {\n type = 'variable';\n matches = variables;\n }\n\n const options = matches.filter((name) => name.startsWith(text)).map((name) => ({ type, label: name }));\n return {\n from,\n options,\n };\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React", "createDocAccessor", "useThemeContext", "useTranslation", "createBasicExtensions", "createDataExtensions", "createMarkdownExtensions", "createThemeExtensions", "decorateMarkdown", "useTextEditor", "mx", "isTruthy", "autocompletion", "completionKeymap", "Decoration", "ViewPlugin", "keymap", "handlebars", "_", "handlebarsHighlightPlugin", "autocompletion", "activateOnTyping", "aboveCursor", "closeOnBlur", "override", "handlebarsCompletions", "keymap", "of", "completionKeymap", "regex", "comment", "brackets", "command", "var", "ViewPlugin", "fromClass", "buildDecorations", "view", "widgets", "from", "to", "visibleRanges", "text", "state", "doc", "sliceString", "match", "exec", "start", "index", "end", "length", "push", "Decoration", "mark", "class", "range", "parts", "split", "idx", "sort", "a", "b", "startSide", "set", "update", "docChanged", "viewportChanged", "decorations", "v", "variables", "commands", "context", "matchBefore", "type", "slice", "matches", "startsWith", "lastIndexOf", "options", "filter", "name", "map", "label", "TemplateEditor", "id", "classNames", "template", "t", "useTranslation", "meta", "themeMode", "useThemeContext", "parentRef", "useTextEditor", "text", "source", "target", "initialValue", "content", "extensions", "createDataExtensions", "createDocAccessor", "createBasicExtensions", "bracketMatching", "lineNumbers", "lineWrapping", "placeholder", "createThemeExtensions", "createMarkdownExtensions", "decorateMarkdown", "handlebars", "filter", "isTruthy", "div", "ref", "className", "mx"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
LLM_PROVIDERS,
|
|
4
|
+
ServiceType
|
|
5
|
+
} from "./chunk-TNR46C3L.mjs";
|
|
6
|
+
import {
|
|
7
|
+
meta
|
|
8
|
+
} from "./chunk-73ABYRYX.mjs";
|
|
9
|
+
|
|
10
|
+
// src/components/AssistantSettings/AssistantSettings.tsx
|
|
11
|
+
import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
|
|
12
|
+
import React from "react";
|
|
13
|
+
import { DEFAULT_EDGE_MODELS, DEFAULT_OLLAMA_MODELS } from "@dxos/ai";
|
|
14
|
+
import { Input, Select, useTranslation } from "@dxos/react-ui";
|
|
15
|
+
import { ControlGroup, ControlItemInput, ControlPage, ControlSection } from "@dxos/react-ui-form";
|
|
16
|
+
var DEFAULT_VALUE = "__default";
|
|
17
|
+
var LLM_PROVIDER_LABELS = {
|
|
18
|
+
edge: "DXOS",
|
|
19
|
+
ollama: "Ollama",
|
|
20
|
+
lmstudio: "LM Studio"
|
|
21
|
+
};
|
|
22
|
+
var AssistantSettings = ({ settings }) => {
|
|
23
|
+
var _effect = _useSignals();
|
|
24
|
+
try {
|
|
25
|
+
const { t } = useTranslation(meta.id);
|
|
26
|
+
return /* @__PURE__ */ React.createElement(ControlPage, null, /* @__PURE__ */ React.createElement(ControlSection, {
|
|
27
|
+
title: t("settings title", {
|
|
28
|
+
ns: meta.id
|
|
29
|
+
})
|
|
30
|
+
}, /* @__PURE__ */ React.createElement(ControlGroup, null, /* @__PURE__ */ React.createElement(ControlItemInput, {
|
|
31
|
+
title: t("settings custom prompts label")
|
|
32
|
+
}, /* @__PURE__ */ React.createElement(Input.Switch, {
|
|
33
|
+
checked: !!settings.customPrompts,
|
|
34
|
+
onCheckedChange: (checked) => settings.customPrompts = checked
|
|
35
|
+
})), /* @__PURE__ */ React.createElement(ControlItemInput, {
|
|
36
|
+
title: t("settings llm provider label")
|
|
37
|
+
}, /* @__PURE__ */ React.createElement(Select.Root, {
|
|
38
|
+
value: settings.llmProvider ?? "edge",
|
|
39
|
+
onValueChange: (value) => {
|
|
40
|
+
settings.llmProvider = value === DEFAULT_VALUE ? void 0 : value;
|
|
41
|
+
}
|
|
42
|
+
}, /* @__PURE__ */ React.createElement(Select.TriggerButton, {
|
|
43
|
+
placeholder: t("settings llm provider label")
|
|
44
|
+
}), /* @__PURE__ */ React.createElement(Select.Portal, null, /* @__PURE__ */ React.createElement(Select.Content, null, /* @__PURE__ */ React.createElement(Select.Viewport, null, /* @__PURE__ */ React.createElement(Select.Option, {
|
|
45
|
+
value: DEFAULT_VALUE
|
|
46
|
+
}, t("settings default label")), LLM_PROVIDERS.map((model) => /* @__PURE__ */ React.createElement(Select.Option, {
|
|
47
|
+
key: model,
|
|
48
|
+
value: model
|
|
49
|
+
}, LLM_PROVIDER_LABELS[model]))), /* @__PURE__ */ React.createElement(Select.Arrow, null))))), /* @__PURE__ */ React.createElement(ControlItemInput, {
|
|
50
|
+
title: t("settings edge llm model label")
|
|
51
|
+
}, /* @__PURE__ */ React.createElement(Select.Root, {
|
|
52
|
+
value: settings.edgeModel ?? DEFAULT_VALUE,
|
|
53
|
+
onValueChange: (value) => {
|
|
54
|
+
settings.edgeModel = value === DEFAULT_VALUE ? void 0 : value;
|
|
55
|
+
}
|
|
56
|
+
}, /* @__PURE__ */ React.createElement(Select.TriggerButton, {
|
|
57
|
+
placeholder: t("settings default llm model label")
|
|
58
|
+
}), /* @__PURE__ */ React.createElement(Select.Portal, null, /* @__PURE__ */ React.createElement(Select.Content, null, /* @__PURE__ */ React.createElement(Select.Viewport, null, /* @__PURE__ */ React.createElement(Select.Option, {
|
|
59
|
+
value: DEFAULT_VALUE
|
|
60
|
+
}, t("settings default label")), DEFAULT_EDGE_MODELS.map((model) => /* @__PURE__ */ React.createElement(Select.Option, {
|
|
61
|
+
key: model,
|
|
62
|
+
value: model
|
|
63
|
+
}, model))), /* @__PURE__ */ React.createElement(Select.Arrow, null))))), /* @__PURE__ */ React.createElement(ControlItemInput, {
|
|
64
|
+
title: t("settings ollama llm model label")
|
|
65
|
+
}, /* @__PURE__ */ React.createElement(Select.Root, {
|
|
66
|
+
value: settings.ollamaModel ?? DEFAULT_VALUE,
|
|
67
|
+
onValueChange: (value) => {
|
|
68
|
+
settings.ollamaModel = value === DEFAULT_VALUE ? void 0 : value;
|
|
69
|
+
}
|
|
70
|
+
}, /* @__PURE__ */ React.createElement(Select.TriggerButton, {
|
|
71
|
+
placeholder: t("settings default llm model label")
|
|
72
|
+
}), /* @__PURE__ */ React.createElement(Select.Portal, null, /* @__PURE__ */ React.createElement(Select.Content, null, /* @__PURE__ */ React.createElement(Select.Viewport, null, /* @__PURE__ */ React.createElement(Select.Option, {
|
|
73
|
+
value: DEFAULT_VALUE
|
|
74
|
+
}, t("settings default label")), DEFAULT_OLLAMA_MODELS.map((model) => /* @__PURE__ */ React.createElement(Select.Option, {
|
|
75
|
+
key: model,
|
|
76
|
+
value: model
|
|
77
|
+
}, model))), /* @__PURE__ */ React.createElement(Select.Arrow, null))))))));
|
|
78
|
+
} finally {
|
|
79
|
+
_effect.f();
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
// src/components/ChatProgress/ChatProgress.tsx
|
|
84
|
+
import { useSignals as _useSignals2 } from "@preact-signals/safe-react/tracking";
|
|
85
|
+
import React2, { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
86
|
+
import { addEventListener } from "@dxos/async";
|
|
87
|
+
import { Flex, ProgressBar, TextCrawl, useExecutionGraph } from "@dxos/react-ui-components";
|
|
88
|
+
var ChatProgress = ({ chat }) => {
|
|
89
|
+
var _effect = _useSignals2();
|
|
90
|
+
try {
|
|
91
|
+
const { commits } = useExecutionGraph(chat.traceQueue?.target, true);
|
|
92
|
+
const nodes = useMemo(() => commits.map((commit) => ({
|
|
93
|
+
id: commit.id,
|
|
94
|
+
message: commit.message
|
|
95
|
+
})), [
|
|
96
|
+
commits
|
|
97
|
+
]);
|
|
98
|
+
const lines = useMemo(() => commits.map((commit) => commit.message), [
|
|
99
|
+
commits
|
|
100
|
+
]);
|
|
101
|
+
const [index, setIndex] = useState(void 0);
|
|
102
|
+
const handleSelect = useCallback(({ index: index2 }) => {
|
|
103
|
+
setIndex((current) => {
|
|
104
|
+
return current === index2 ? void 0 : index2;
|
|
105
|
+
});
|
|
106
|
+
}, []);
|
|
107
|
+
const ref = useRef(null);
|
|
108
|
+
useEffect(() => {
|
|
109
|
+
if (!ref.current) {
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
return addEventListener(ref.current, "keydown", (event) => {
|
|
113
|
+
switch (event.key) {
|
|
114
|
+
case "ArrowLeft": {
|
|
115
|
+
setIndex((current) => current === void 0 || current <= 0 ? 0 : current - 1);
|
|
116
|
+
break;
|
|
117
|
+
}
|
|
118
|
+
case "ArrowRight": {
|
|
119
|
+
setIndex((current) => current === void 0 || current >= nodes.length ? nodes.length - 1 : current + 1);
|
|
120
|
+
break;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
}, [
|
|
125
|
+
nodes.length
|
|
126
|
+
]);
|
|
127
|
+
return /* @__PURE__ */ React2.createElement(Flex, {
|
|
128
|
+
column: true,
|
|
129
|
+
tabIndex: 0,
|
|
130
|
+
ref,
|
|
131
|
+
classNames: "outline-none"
|
|
132
|
+
}, /* @__PURE__ */ React2.createElement(ProgressBar, {
|
|
133
|
+
nodes,
|
|
134
|
+
index,
|
|
135
|
+
onSelect: handleSelect
|
|
136
|
+
}), /* @__PURE__ */ React2.createElement(TextCrawl, {
|
|
137
|
+
lines,
|
|
138
|
+
index,
|
|
139
|
+
autoAdvance: true,
|
|
140
|
+
classNames: "pis-4 text-sm text-subdued"
|
|
141
|
+
}));
|
|
142
|
+
} finally {
|
|
143
|
+
_effect.f();
|
|
144
|
+
}
|
|
145
|
+
};
|
|
146
|
+
|
|
147
|
+
// src/components/PromptSettings.tsx
|
|
148
|
+
import { useSignals as _useSignals3 } from "@preact-signals/safe-react/tracking";
|
|
149
|
+
import React3 from "react";
|
|
150
|
+
import { Toolbar, useTranslation as useTranslation2 } from "@dxos/react-ui";
|
|
151
|
+
var PromptSettings = ({ template }) => {
|
|
152
|
+
var _effect = _useSignals3();
|
|
153
|
+
try {
|
|
154
|
+
const { t } = useTranslation2(meta.id);
|
|
155
|
+
return /* @__PURE__ */ React3.createElement("div", {
|
|
156
|
+
className: "flex flex-col gap-4"
|
|
157
|
+
}, /* @__PURE__ */ React3.createElement("h2", null, t("prompt rules label")), /* @__PURE__ */ React3.createElement(Toolbar.Root, null));
|
|
158
|
+
} finally {
|
|
159
|
+
_effect.f();
|
|
160
|
+
}
|
|
161
|
+
};
|
|
162
|
+
|
|
163
|
+
// src/components/Toolbox/Toolbox.tsx
|
|
164
|
+
import { useSignals as _useSignals4 } from "@preact-signals/safe-react/tracking";
|
|
165
|
+
import React4, { Fragment, useEffect as useEffect2, useState as useState2 } from "react";
|
|
166
|
+
import { FunctionType } from "@dxos/functions";
|
|
167
|
+
import { log } from "@dxos/log";
|
|
168
|
+
import { Filter, useQuery } from "@dxos/react-client/echo";
|
|
169
|
+
import { useTranslation as useTranslation3 } from "@dxos/react-ui";
|
|
170
|
+
import { mx } from "@dxos/react-ui-theme";
|
|
171
|
+
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-assistant/src/components/Toolbox/Toolbox.tsx";
|
|
172
|
+
var Toolbox = ({ classNames, functions, services, blueprints, activeBlueprints }) => {
|
|
173
|
+
var _effect = _useSignals4();
|
|
174
|
+
try {
|
|
175
|
+
const { t } = useTranslation3(meta.id);
|
|
176
|
+
return /* @__PURE__ */ React4.createElement("div", {
|
|
177
|
+
className: mx("flex flex-col overflow-y-auto box-content", classNames)
|
|
178
|
+
}, blueprints && blueprints.length > 0 && /* @__PURE__ */ React4.createElement(Section, {
|
|
179
|
+
title: "Blueprints",
|
|
180
|
+
items: blueprints.map(({ target }) => ({
|
|
181
|
+
name: target?.name ?? "",
|
|
182
|
+
description: target?.description ?? "",
|
|
183
|
+
subitems: target?.tools.map((toolId) => ({
|
|
184
|
+
name: `\u2219 ${safeToolId(toolId)}`
|
|
185
|
+
}))
|
|
186
|
+
}))
|
|
187
|
+
}), activeBlueprints && activeBlueprints.length > 0 && /* @__PURE__ */ React4.createElement(Section, {
|
|
188
|
+
title: "Blueprints",
|
|
189
|
+
items: activeBlueprints.map(({ target }) => ({
|
|
190
|
+
name: target?.name ?? "",
|
|
191
|
+
description: target?.description ?? "",
|
|
192
|
+
subitems: target?.tools.map((toolId) => ({
|
|
193
|
+
name: `\u2219 ${safeToolId(toolId)}`
|
|
194
|
+
}))
|
|
195
|
+
}))
|
|
196
|
+
}), services && services.length > 0 && /* @__PURE__ */ React4.createElement(Section, {
|
|
197
|
+
title: "Services",
|
|
198
|
+
items: services.map(({ service: { serviceId, name, description } }) => ({
|
|
199
|
+
name: name ?? serviceId,
|
|
200
|
+
description
|
|
201
|
+
}))
|
|
202
|
+
}), functions && functions.length > 0 && /* @__PURE__ */ React4.createElement(Section, {
|
|
203
|
+
title: "Functions",
|
|
204
|
+
items: functions.map(({ name, description }) => ({
|
|
205
|
+
name,
|
|
206
|
+
description
|
|
207
|
+
}))
|
|
208
|
+
}));
|
|
209
|
+
} finally {
|
|
210
|
+
_effect.f();
|
|
211
|
+
}
|
|
212
|
+
};
|
|
213
|
+
var Section = ({ title, items, striped }) => {
|
|
214
|
+
var _effect = _useSignals4();
|
|
215
|
+
try {
|
|
216
|
+
const stripeClassNames = "odd:bg-neutral-50 dark:odd:bg-neutral-800";
|
|
217
|
+
const gridClassNames = "grid grid-cols-[8rem_1fr]";
|
|
218
|
+
const subGridClassNames = mx("col-span-full grid grid-cols-subgrid text-xs px-2", striped && stripeClassNames);
|
|
219
|
+
return /* @__PURE__ */ React4.createElement("div", null, /* @__PURE__ */ React4.createElement("h1", {
|
|
220
|
+
className: "px-2 text-sm"
|
|
221
|
+
}, title), /* @__PURE__ */ React4.createElement("div", {
|
|
222
|
+
className: gridClassNames
|
|
223
|
+
}, items.map(({ name, description, subitems }, i) => /* @__PURE__ */ React4.createElement(Fragment, {
|
|
224
|
+
key: i
|
|
225
|
+
}, name && /* @__PURE__ */ React4.createElement("div", {
|
|
226
|
+
className: subGridClassNames
|
|
227
|
+
}, /* @__PURE__ */ React4.createElement("div", {
|
|
228
|
+
className: "truncate text-primary-500"
|
|
229
|
+
}, name), /* @__PURE__ */ React4.createElement("div", {
|
|
230
|
+
className: "line-clamp-2"
|
|
231
|
+
}, description)), subitems?.map(({ name: name2, description: description2 }, i2) => /* @__PURE__ */ React4.createElement("div", {
|
|
232
|
+
key: i2,
|
|
233
|
+
className: mx(subGridClassNames, striped && stripeClassNames)
|
|
234
|
+
}, /* @__PURE__ */ React4.createElement("div", {
|
|
235
|
+
className: "truncate"
|
|
236
|
+
}, name2), /* @__PURE__ */ React4.createElement("div", {
|
|
237
|
+
className: "line-clamp-3 text-subdued"
|
|
238
|
+
}, description2)))))));
|
|
239
|
+
} finally {
|
|
240
|
+
_effect.f();
|
|
241
|
+
}
|
|
242
|
+
};
|
|
243
|
+
var ToolboxContainer = ({ classNames, space, processor }) => {
|
|
244
|
+
var _effect = _useSignals4();
|
|
245
|
+
try {
|
|
246
|
+
const services = useQuery(space, Filter.type(ServiceType));
|
|
247
|
+
const [serviceTools, setServiceTools] = useState2([]);
|
|
248
|
+
useEffect2(() => {
|
|
249
|
+
log("creating service tools...", {
|
|
250
|
+
services: services.length
|
|
251
|
+
}, {
|
|
252
|
+
F: __dxlog_file,
|
|
253
|
+
L: 117,
|
|
254
|
+
S: void 0,
|
|
255
|
+
C: (f, a) => f(...a)
|
|
256
|
+
});
|
|
257
|
+
queueMicrotask(async () => {
|
|
258
|
+
});
|
|
259
|
+
}, [
|
|
260
|
+
services
|
|
261
|
+
]);
|
|
262
|
+
const functions = useQuery(space, Filter.type(FunctionType));
|
|
263
|
+
return /* @__PURE__ */ React4.createElement(Toolbox, {
|
|
264
|
+
classNames,
|
|
265
|
+
blueprints: processor?.context.blueprints.value,
|
|
266
|
+
services: serviceTools,
|
|
267
|
+
functions
|
|
268
|
+
});
|
|
269
|
+
} finally {
|
|
270
|
+
_effect.f();
|
|
271
|
+
}
|
|
272
|
+
};
|
|
273
|
+
var safeToolId = (name) => {
|
|
274
|
+
return name.split("_").pop();
|
|
275
|
+
};
|
|
276
|
+
|
|
277
|
+
// src/components/index.ts
|
|
278
|
+
import { lazy } from "react";
|
|
279
|
+
var BlueprintContainer = lazy(() => import("./BlueprintContainer-4MKN6ZRB.mjs"));
|
|
280
|
+
var ChatCompanion = lazy(() => import("./ChatCompanion-XFNXVZIP.mjs"));
|
|
281
|
+
var ChatContainer = lazy(() => import("./ChatContainer-UTJGCQXF.mjs"));
|
|
282
|
+
var ChatDialog = lazy(() => import("./ChatDialog-QEYZ4IOV.mjs"));
|
|
283
|
+
var SequenceContainer = lazy(() => import("./SequenceContainer-PGGJUQ46.mjs"));
|
|
284
|
+
|
|
285
|
+
export {
|
|
286
|
+
AssistantSettings,
|
|
287
|
+
ChatProgress,
|
|
288
|
+
PromptSettings,
|
|
289
|
+
Toolbox,
|
|
290
|
+
ToolboxContainer,
|
|
291
|
+
BlueprintContainer,
|
|
292
|
+
ChatCompanion,
|
|
293
|
+
ChatContainer,
|
|
294
|
+
ChatDialog,
|
|
295
|
+
SequenceContainer
|
|
296
|
+
};
|
|
297
|
+
//# sourceMappingURL=chunk-E2WXZND7.mjs.map
|