@dxos/plugin-assistant 0.8.4-main.5ea62a8 → 0.8.4-main.ae835ea
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-OWUSKPRK.mjs → BlueprintContainer-GMSYKGSO.mjs} +13 -6
- package/dist/lib/browser/BlueprintContainer-GMSYKGSO.mjs.map +7 -0
- package/dist/lib/browser/{ChatCompanion-FRCVSLPP.mjs → ChatCompanion-M3FDKTQM.mjs} +39 -14
- package/dist/lib/browser/ChatCompanion-M3FDKTQM.mjs.map +7 -0
- package/dist/lib/browser/{ChatContainer-YBJBIVUZ.mjs → ChatContainer-KAH7XITI.mjs} +10 -11
- package/dist/lib/browser/ChatContainer-KAH7XITI.mjs.map +7 -0
- package/dist/lib/browser/{ChatDialog-MTPJLEHM.mjs → ChatDialog-ZWRGABW6.mjs} +8 -10
- package/dist/lib/browser/ChatDialog-ZWRGABW6.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-7AAWTWGA.mjs → app-graph-builder-R5T7BJPC.mjs} +41 -11
- package/dist/lib/browser/app-graph-builder-R5T7BJPC.mjs.map +7 -0
- package/dist/lib/browser/blueprint-definition-AGTDXTXO.mjs +13 -0
- package/dist/lib/browser/chunk-357IHWQL.mjs +1519 -0
- package/dist/lib/browser/chunk-357IHWQL.mjs.map +7 -0
- package/dist/lib/browser/{chunk-6QMISAU6.mjs → chunk-A2NVNXPL.mjs} +15 -12
- package/dist/lib/browser/chunk-A2NVNXPL.mjs.map +7 -0
- package/dist/lib/browser/{chunk-V5H5CCZA.mjs → chunk-CQW6UPJM.mjs} +24 -43
- package/dist/lib/browser/chunk-CQW6UPJM.mjs.map +7 -0
- package/dist/lib/browser/{chunk-SMIVXXAI.mjs → chunk-GNI6HL6G.mjs} +37 -20
- package/dist/lib/browser/chunk-GNI6HL6G.mjs.map +7 -0
- package/dist/lib/browser/chunk-GXHZTOWJ.mjs +378 -0
- package/dist/lib/browser/chunk-GXHZTOWJ.mjs.map +7 -0
- package/dist/lib/browser/chunk-L5OA5OGS.mjs +262 -0
- package/dist/lib/browser/chunk-L5OA5OGS.mjs.map +7 -0
- package/dist/lib/browser/{chunk-OYFQS7JM.mjs → chunk-MEN5WTLA.mjs} +64 -39
- package/dist/lib/browser/chunk-MEN5WTLA.mjs.map +7 -0
- package/dist/lib/browser/{chunk-CFXXQM25.mjs → chunk-PUG24BEC.mjs} +118 -23
- package/dist/lib/browser/chunk-PUG24BEC.mjs.map +7 -0
- package/dist/lib/browser/{chunk-IJAJRAR7.mjs → chunk-SJJV3HEX.mjs} +2 -4
- package/dist/lib/browser/chunk-SJJV3HEX.mjs.map +7 -0
- package/dist/lib/browser/chunk-WBG5PTSX.mjs +23 -0
- package/dist/lib/browser/chunk-WBG5PTSX.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 +85 -51
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/{intent-resolver-BQO5SVGI.mjs → intent-resolver-3C5TABOX.mjs} +38 -14
- package/dist/lib/browser/intent-resolver-3C5TABOX.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-VNCD2H7C.mjs → react-surface-EYKA5IFU.mjs} +11 -30
- package/dist/lib/browser/react-surface-EYKA5IFU.mjs.map +7 -0
- package/dist/lib/browser/{settings-36V3VUMW.mjs → settings-VMVBYZLN.mjs} +5 -5
- package/dist/lib/browser/{settings-36V3VUMW.mjs.map → settings-VMVBYZLN.mjs.map} +1 -1
- package/dist/lib/browser/{state-D5IVKNYG.mjs → state-CFREPBB6.mjs} +5 -5
- package/dist/lib/browser/{state-D5IVKNYG.mjs.map → state-CFREPBB6.mjs.map} +1 -1
- package/dist/lib/browser/toolkit-F3NQ7TSI.mjs +21 -0
- package/dist/lib/browser/toolkit-F3NQ7TSI.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +2 -2
- package/dist/lib/node-esm/{BlueprintContainer-UFVWCRN6.mjs → BlueprintContainer-6GBLMK4Z.mjs} +13 -6
- package/dist/lib/node-esm/BlueprintContainer-6GBLMK4Z.mjs.map +7 -0
- package/dist/lib/node-esm/{ChatCompanion-ZNRZEKH5.mjs → ChatCompanion-OV426GCP.mjs} +39 -14
- package/dist/lib/node-esm/ChatCompanion-OV426GCP.mjs.map +7 -0
- package/dist/lib/node-esm/{ChatContainer-TUCITJJW.mjs → ChatContainer-UKY7NHFY.mjs} +10 -11
- package/dist/lib/node-esm/ChatContainer-UKY7NHFY.mjs.map +7 -0
- package/dist/lib/node-esm/{ChatDialog-JLM7RDZQ.mjs → ChatDialog-2BDQIEXH.mjs} +8 -10
- package/dist/lib/node-esm/ChatDialog-2BDQIEXH.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-PNAFQUYT.mjs → app-graph-builder-I52RYVWH.mjs} +41 -11
- package/dist/lib/node-esm/app-graph-builder-I52RYVWH.mjs.map +7 -0
- package/dist/lib/node-esm/{blueprint-definition-275J3XL2.mjs → blueprint-definition-CFCUD2VC.mjs} +5 -4
- package/dist/lib/node-esm/{chunk-CAQKGW3B.mjs → chunk-2CAETDW2.mjs} +63 -39
- package/dist/lib/node-esm/chunk-2CAETDW2.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-RLBN4RNR.mjs → chunk-4J5FYNNM.mjs} +15 -12
- package/dist/lib/node-esm/chunk-4J5FYNNM.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-7YOGZI66.mjs → chunk-5ARE4R2I.mjs} +37 -20
- package/dist/lib/node-esm/chunk-5ARE4R2I.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-7ZYOYW7F.mjs +264 -0
- package/dist/lib/node-esm/chunk-7ZYOYW7F.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-HJPIYMWD.mjs +1520 -0
- package/dist/lib/node-esm/chunk-HJPIYMWD.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-UWUUZQWJ.mjs → chunk-O36P4LN5.mjs} +24 -43
- package/dist/lib/node-esm/chunk-O36P4LN5.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-WE6KTH72.mjs +25 -0
- package/dist/lib/node-esm/chunk-WE6KTH72.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-FNZJJL7G.mjs → chunk-XM4BVQQR.mjs} +118 -23
- package/dist/lib/node-esm/chunk-XM4BVQQR.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-YPXEA46Q.mjs → chunk-XQBL2SBL.mjs} +2 -4
- package/dist/lib/node-esm/chunk-XQBL2SBL.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-YIO5MEPR.mjs +380 -0
- package/dist/lib/node-esm/chunk-YIO5MEPR.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 +85 -51
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/{intent-resolver-FIS3T5KP.mjs → intent-resolver-HQ27YALS.mjs} +38 -14
- package/dist/lib/node-esm/intent-resolver-HQ27YALS.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-4NLRKNBU.mjs → react-surface-UOC3CBPH.mjs} +11 -30
- package/dist/lib/node-esm/react-surface-UOC3CBPH.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-7ZCZ6AS5.mjs → settings-7AUVNDM2.mjs} +5 -5
- package/dist/lib/node-esm/{settings-7ZCZ6AS5.mjs.map → settings-7AUVNDM2.mjs.map} +1 -1
- package/dist/lib/node-esm/{state-4VLKPLW3.mjs → state-XXND44OW.mjs} +5 -5
- package/dist/lib/node-esm/{state-4VLKPLW3.mjs.map → state-XXND44OW.mjs.map} +1 -1
- package/dist/lib/node-esm/toolkit-7CH5UNSQ.mjs +22 -0
- package/dist/lib/node-esm/toolkit-7CH5UNSQ.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.map +1 -1
- package/dist/types/src/capabilities/blueprint-definition.d.ts +1 -1
- package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -1
- package/dist/types/src/capabilities/capabilities.d.ts +0 -8
- package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
- package/dist/types/src/capabilities/edge-model-resolver.d.ts.map +1 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
- package/dist/types/src/capabilities/local-model-resolver.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
- package/dist/types/src/capabilities/toolkit.d.ts.map +1 -1
- package/dist/types/src/components/BlueprintContainer.d.ts.map +1 -1
- package/dist/types/src/components/Chat/Chat.d.ts +4 -3
- package/dist/types/src/components/Chat/Chat.d.ts.map +1 -1
- package/dist/types/src/components/ChatCompanion.d.ts.map +1 -1
- package/dist/types/src/components/ChatProgress/ChatProgress.d.ts.map +1 -1
- package/dist/types/src/components/ChatThread/ChatThread.d.ts +10 -5
- package/dist/types/src/components/ChatThread/ChatThread.d.ts.map +1 -1
- package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts +35 -26
- 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/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/ChatToolbar/ChatToolbar.d.ts +6 -0
- package/dist/types/src/components/ChatToolbar/ChatToolbar.d.ts.map +1 -0
- package/dist/types/src/components/ChatToolbar/index.d.ts +2 -0
- package/dist/types/src/components/ChatToolbar/index.d.ts.map +1 -0
- package/dist/types/src/components/{Toolbar → ChatToolbar}/useChatToolbarActions.d.ts +1 -3
- package/dist/types/src/components/ChatToolbar/useChatToolbarActions.d.ts.map +1 -0
- package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts +2 -1
- package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts.map +1 -1
- package/dist/types/src/components/TemplateEditor/TemplateEditor.stories.d.ts +21 -14
- 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 +21 -14
- package/dist/types/src/components/TemplateEditor/TemplateForm.stories.d.ts.map +1 -1
- 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/Toolbox/Toolbox.d.ts +2 -2
- package/dist/types/src/components/Toolbox/Toolbox.d.ts.map +1 -1
- package/dist/types/src/components/Toolbox/Toolbox.stories.d.ts +21 -14
- package/dist/types/src/components/Toolbox/Toolbox.stories.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +1 -5
- 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/index.d.ts +2 -2
- package/dist/types/src/functions/index.d.ts.map +1 -1
- package/dist/types/src/functions/{list.d.ts → object-list.d.ts} +1 -1
- package/dist/types/src/functions/object-list.d.ts.map +1 -0
- package/dist/types/src/functions/{load.d.ts → object-load.d.ts} +1 -1
- package/dist/types/src/functions/object-load.d.ts.map +1 -0
- package/dist/types/src/hooks/index.d.ts +0 -3
- package/dist/types/src/hooks/index.d.ts.map +1 -1
- package/dist/types/src/hooks/useBlueprintRegistry.d.ts +2 -1
- package/dist/types/src/hooks/useBlueprintRegistry.d.ts.map +1 -1
- package/dist/types/src/hooks/useChatProcessor.d.ts +2 -2
- package/dist/types/src/hooks/useChatProcessor.d.ts.map +1 -1
- package/dist/types/src/hooks/useChatServices.d.ts +2 -2
- package/dist/types/src/hooks/useChatServices.d.ts.map +1 -1
- package/dist/types/src/hooks/useContextBinder.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 +1 -0
- package/dist/types/src/processor/index.d.ts.map +1 -1
- package/dist/types/src/processor/presets.d.ts +1 -1
- package/dist/types/src/processor/presets.d.ts.map +1 -1
- package/dist/types/src/processor/processor.d.ts +11 -17
- package/dist/types/src/processor/processor.d.ts.map +1 -1
- package/dist/types/src/processor/update-name.d.ts +10 -0
- package/dist/types/src/processor/update-name.d.ts.map +1 -0
- package/dist/types/src/testing/index.d.ts +1 -2
- 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-services.d.ts +2 -2
- package/dist/types/src/testing/test-services.d.ts.map +1 -1
- package/dist/types/src/toolkits/AssistantToolkit.d.ts +21 -0
- package/dist/types/src/toolkits/AssistantToolkit.d.ts.map +1 -0
- package/dist/types/src/toolkits/SystemToolkit.d.ts +69 -0
- package/dist/types/src/toolkits/SystemToolkit.d.ts.map +1 -0
- package/dist/types/src/toolkits/index.d.ts +3 -0
- package/dist/types/src/toolkits/index.d.ts.map +1 -0
- package/dist/types/src/translations.d.ts +6 -4
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/Assistant.d.ts +15 -9
- package/dist/types/src/types/Assistant.d.ts.map +1 -1
- package/dist/types/src/types/AssistantAction.d.ts +18 -6
- package/dist/types/src/types/AssistantAction.d.ts.map +1 -1
- package/dist/types/src/types/service.d.ts +12 -12
- package/dist/types/src/types/service.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +93 -110
- package/src/AssistantPlugin.tsx +140 -129
- package/src/capabilities/ai-service.ts +6 -7
- package/src/capabilities/app-graph-builder.ts +36 -4
- package/src/capabilities/blueprint-definition.ts +39 -15
- package/src/capabilities/capabilities.ts +0 -13
- package/src/capabilities/edge-model-resolver.ts +5 -7
- package/src/capabilities/intent-resolver.ts +33 -6
- package/src/capabilities/local-model-resolver.ts +6 -8
- package/src/capabilities/react-surface.tsx +1 -21
- package/src/capabilities/toolkit.ts +10 -154
- package/src/components/BlueprintContainer.tsx +8 -2
- package/src/components/Chat/Chat.tsx +72 -70
- package/src/components/ChatCompanion.tsx +33 -8
- package/src/components/ChatContainer.tsx +4 -4
- package/src/components/ChatDialog.tsx +8 -8
- package/src/components/ChatProgress/ChatProgress.tsx +2 -3
- package/src/components/ChatPrompt/ChatOptions.tsx +17 -25
- package/src/components/ChatThread/ChatThread.stories.tsx +75 -229
- package/src/components/ChatThread/ChatThread.tsx +64 -46
- package/src/components/ChatThread/Link.tsx +11 -8
- 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/{Toolbar/Toolbar.tsx → ChatToolbar/ChatToolbar.tsx} +5 -2
- package/src/components/{Toolbar → ChatToolbar}/index.ts +1 -1
- package/src/components/{Toolbar → ChatToolbar}/useChatToolbarActions.ts +2 -1
- package/src/components/TemplateEditor/TemplateEditor.stories.tsx +5 -5
- package/src/components/TemplateEditor/TemplateEditor.tsx +18 -10
- package/src/components/TemplateEditor/TemplateForm.stories.tsx +3 -5
- package/src/components/TemplateEditor/TemplateForm.tsx +1 -1
- package/src/components/TemplateEditor/handlebars-extension.ts +12 -11
- package/src/components/{ChatThread → ToolBlock}/ToolBlock.tsx +31 -26
- package/src/components/ToolBlock/ToolBlockWidget.tsx +5 -0
- package/src/components/ToolBlock/index.ts +6 -0
- package/src/components/Toolbox/Toolbox.stories.tsx +4 -7
- package/src/components/Toolbox/Toolbox.tsx +3 -3
- package/src/components/index.ts +1 -3
- package/src/functions/analysis.ts +4 -2
- package/src/functions/index.ts +2 -2
- package/src/functions/{list.ts → object-list.ts} +6 -4
- package/src/functions/{load.ts → object-load.ts} +9 -7
- package/src/hooks/index.ts +0 -3
- package/src/hooks/useBlueprintRegistry.ts +17 -3
- package/src/hooks/useChatProcessor.ts +13 -5
- package/src/hooks/useChatServices.ts +26 -42
- package/src/hooks/useContextBinder.ts +17 -5
- package/src/hooks/useItemTypes.ts +1 -1
- package/src/index.ts +2 -0
- package/src/meta.ts +9 -6
- package/src/processor/index.ts +1 -0
- package/src/processor/presets.ts +1 -1
- package/src/processor/processor.test.ts +21 -17
- package/src/processor/processor.ts +30 -57
- package/src/processor/update-name.ts +57 -0
- package/src/queue-logger.ts +5 -5
- package/src/testing/index.ts +1 -2
- package/src/testing/test-generator.ts +261 -0
- package/src/testing/test-services.ts +2 -8
- package/src/toolkits/AssistantToolkit.ts +55 -0
- package/src/toolkits/SystemToolkit.ts +292 -0
- package/src/toolkits/index.ts +6 -0
- package/src/translations.ts +6 -5
- package/src/types/Assistant.ts +10 -8
- package/src/types/AssistantAction.ts +10 -2
- package/src/types/service.ts +17 -9
- package/dist/lib/browser/BlueprintContainer-OWUSKPRK.mjs.map +0 -7
- package/dist/lib/browser/ChatCompanion-FRCVSLPP.mjs.map +0 -7
- package/dist/lib/browser/ChatContainer-YBJBIVUZ.mjs.map +0 -7
- package/dist/lib/browser/ChatDialog-MTPJLEHM.mjs.map +0 -7
- package/dist/lib/browser/SequenceContainer-TF5QNXYM.mjs +0 -150
- package/dist/lib/browser/SequenceContainer-TF5QNXYM.mjs.map +0 -7
- package/dist/lib/browser/ai-service-NRZPTUHO.mjs +0 -22
- package/dist/lib/browser/ai-service-NRZPTUHO.mjs.map +0 -7
- package/dist/lib/browser/app-graph-builder-7AAWTWGA.mjs.map +0 -7
- package/dist/lib/browser/blueprint-definition-CRZPIA5A.mjs +0 -12
- package/dist/lib/browser/chunk-6QMISAU6.mjs.map +0 -7
- package/dist/lib/browser/chunk-CFXXQM25.mjs.map +0 -7
- package/dist/lib/browser/chunk-IJAJRAR7.mjs.map +0 -7
- package/dist/lib/browser/chunk-O4LUJEDV.mjs +0 -20
- package/dist/lib/browser/chunk-O4LUJEDV.mjs.map +0 -7
- package/dist/lib/browser/chunk-OYFQS7JM.mjs.map +0 -7
- package/dist/lib/browser/chunk-SMIVXXAI.mjs.map +0 -7
- package/dist/lib/browser/chunk-V5H5CCZA.mjs.map +0 -7
- package/dist/lib/browser/chunk-XL557TXF.mjs +0 -2332
- package/dist/lib/browser/chunk-XL557TXF.mjs.map +0 -7
- package/dist/lib/browser/edge-model-resolver-E5M3CC46.mjs +0 -22
- package/dist/lib/browser/edge-model-resolver-E5M3CC46.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-BQO5SVGI.mjs.map +0 -7
- package/dist/lib/browser/local-model-resolver-VZ5WZQIC.mjs +0 -21
- package/dist/lib/browser/local-model-resolver-VZ5WZQIC.mjs.map +0 -7
- package/dist/lib/browser/react-surface-VNCD2H7C.mjs.map +0 -7
- package/dist/lib/browser/toolkit-Y5OYX5PO.mjs +0 -191
- package/dist/lib/browser/toolkit-Y5OYX5PO.mjs.map +0 -7
- package/dist/lib/node-esm/BlueprintContainer-UFVWCRN6.mjs.map +0 -7
- package/dist/lib/node-esm/ChatCompanion-ZNRZEKH5.mjs.map +0 -7
- package/dist/lib/node-esm/ChatContainer-TUCITJJW.mjs.map +0 -7
- package/dist/lib/node-esm/ChatDialog-JLM7RDZQ.mjs.map +0 -7
- package/dist/lib/node-esm/SequenceContainer-UXOVZPZO.mjs +0 -151
- package/dist/lib/node-esm/SequenceContainer-UXOVZPZO.mjs.map +0 -7
- package/dist/lib/node-esm/ai-service-UDEPIPTO.mjs +0 -23
- package/dist/lib/node-esm/ai-service-UDEPIPTO.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-builder-PNAFQUYT.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-2X6VEO32.mjs +0 -2333
- package/dist/lib/node-esm/chunk-2X6VEO32.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-7YOGZI66.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-CAQKGW3B.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-FNZJJL7G.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-RLBN4RNR.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-UWUUZQWJ.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-VFY2JG62.mjs +0 -22
- package/dist/lib/node-esm/chunk-VFY2JG62.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-YPXEA46Q.mjs.map +0 -7
- package/dist/lib/node-esm/edge-model-resolver-SZHDLXCT.mjs +0 -23
- package/dist/lib/node-esm/edge-model-resolver-SZHDLXCT.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-FIS3T5KP.mjs.map +0 -7
- package/dist/lib/node-esm/local-model-resolver-2KCBKMYA.mjs +0 -22
- package/dist/lib/node-esm/local-model-resolver-2KCBKMYA.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-4NLRKNBU.mjs.map +0 -7
- package/dist/lib/node-esm/toolkit-2F2OL6WB.mjs +0 -192
- package/dist/lib/node-esm/toolkit-2F2OL6WB.mjs.map +0 -7
- package/dist/types/src/components/ChatThread/ChatMessage.d.ts +0 -33
- 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/PromptSettings.d.ts +0 -6
- package/dist/types/src/components/PromptSettings.d.ts.map +0 -1
- package/dist/types/src/components/SequenceContainer.d.ts +0 -8
- package/dist/types/src/components/SequenceContainer.d.ts.map +0 -1
- package/dist/types/src/components/SequenceEditor/SequenceEditor.d.ts +0 -13
- package/dist/types/src/components/SequenceEditor/SequenceEditor.d.ts.map +0 -1
- package/dist/types/src/components/SequenceEditor/SequenceEditor.stories.d.ts +0 -263
- package/dist/types/src/components/SequenceEditor/SequenceEditor.stories.d.ts.map +0 -1
- package/dist/types/src/components/SequenceEditor/index.d.ts +0 -2
- package/dist/types/src/components/SequenceEditor/index.d.ts.map +0 -1
- package/dist/types/src/components/Toolbar/Toolbar.d.ts +0 -4
- package/dist/types/src/components/Toolbar/Toolbar.d.ts.map +0 -1
- package/dist/types/src/components/Toolbar/index.d.ts +0 -2
- package/dist/types/src/components/Toolbar/index.d.ts.map +0 -1
- package/dist/types/src/components/Toolbar/useChatToolbarActions.d.ts.map +0 -1
- package/dist/types/src/execution-graph/execution-graph.d.ts +0 -21
- package/dist/types/src/execution-graph/execution-graph.d.ts.map +0 -1
- package/dist/types/src/execution-graph/index.d.ts +0 -2
- package/dist/types/src/execution-graph/index.d.ts.map +0 -1
- package/dist/types/src/functions/list.d.ts.map +0 -1
- package/dist/types/src/functions/load.d.ts.map +0 -1
- package/dist/types/src/hooks/useExecutionGraph.d.ts +0 -7
- package/dist/types/src/hooks/useExecutionGraph.d.ts.map +0 -1
- package/dist/types/src/hooks/useMatcherExtension.d.ts +0 -3
- package/dist/types/src/hooks/useMatcherExtension.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 -26
- package/dist/types/src/stories/Chat.stories.d.ts.map +0 -1
- package/dist/types/src/stories/components/BlueprintContainer.d.ts +0 -4
- package/dist/types/src/stories/components/BlueprintContainer.d.ts.map +0 -1
- package/dist/types/src/stories/components/ChatContainer.d.ts +0 -4
- package/dist/types/src/stories/components/ChatContainer.d.ts.map +0 -1
- package/dist/types/src/stories/components/CommentsContainer.d.ts +0 -4
- package/dist/types/src/stories/components/CommentsContainer.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 -4
- package/dist/types/src/stories/components/LoggingContainer.d.ts.map +0 -1
- package/dist/types/src/stories/components/MessageContainer.d.ts +0 -4
- package/dist/types/src/stories/components/MessageContainer.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 -4
- package/dist/types/src/stories/components/TasksContainer.d.ts.map +0 -1
- package/dist/types/src/stories/components/TokenManagerContainer.d.ts +0 -3
- package/dist/types/src/stories/components/TokenManagerContainer.d.ts.map +0 -1
- package/dist/types/src/stories/components/index.d.ts +0 -11
- 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/testing/data.d.ts +0 -5
- 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 -44
- package/dist/types/src/stories/testing/testing.d.ts.map +0 -1
- package/dist/types/src/testing/test-data.d.ts +0 -4
- package/dist/types/src/testing/test-data.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/src/components/ChatThread/ChatMessage.tsx +0 -334
- package/src/components/PromptSettings.tsx +0 -90
- package/src/components/SequenceContainer.tsx +0 -131
- package/src/components/SequenceEditor/SequenceEditor.stories.tsx +0 -33
- package/src/components/SequenceEditor/SequenceEditor.tsx +0 -50
- package/src/components/SequenceEditor/index.ts +0 -5
- package/src/execution-graph/execution-graph.ts +0 -211
- package/src/execution-graph/index.ts +0 -5
- package/src/hooks/useExecutionGraph.ts +0 -20
- package/src/hooks/useMatcherExtension.ts +0 -45
- package/src/hooks/useResolveRef.ts +0 -33
- package/src/parser/filter-generator.test.ts +0 -32
- package/src/parser/filter-generator.ts +0 -76
- 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 -36
- package/src/stories/Chat.stories.tsx +0 -469
- package/src/stories/components/BlueprintContainer.tsx +0 -32
- package/src/stories/components/ChatContainer.tsx +0 -57
- package/src/stories/components/CommentsContainer.tsx +0 -25
- package/src/stories/components/GraphContainer.tsx +0 -118
- package/src/stories/components/LoggingContainer.tsx +0 -21
- package/src/stories/components/MessageContainer.tsx +0 -27
- package/src/stories/components/SurfaceContainer.tsx +0 -52
- package/src/stories/components/TasksContainer.tsx +0 -49
- package/src/stories/components/TokenManagerContainer.tsx +0 -14
- package/src/stories/components/index.ts +0 -15
- package/src/stories/components/types.ts +0 -11
- package/src/stories/testing/data.ts +0 -142
- package/src/stories/testing/index.ts +0 -6
- package/src/stories/testing/testing.tsx +0 -254
- package/src/testing/test-data.ts +0 -109
- package/src/testing/test-functions.ts +0 -16
- /package/dist/lib/browser/{blueprint-definition-CRZPIA5A.mjs.map → blueprint-definition-AGTDXTXO.mjs.map} +0 -0
- /package/dist/lib/node-esm/{blueprint-definition-275J3XL2.mjs.map → blueprint-definition-CFCUD2VC.mjs.map} +0 -0
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
LLM_PROVIDERS
|
|
7
|
-
} from "./chunk-7YOGZI66.mjs";
|
|
3
|
+
LLM_PROVIDERS,
|
|
4
|
+
ServiceType
|
|
5
|
+
} from "./chunk-5ARE4R2I.mjs";
|
|
8
6
|
import {
|
|
9
7
|
meta
|
|
10
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-WE6KTH72.mjs";
|
|
11
9
|
|
|
12
10
|
// src/components/AssistantSettings/AssistantSettings.tsx
|
|
13
11
|
import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
|
|
@@ -86,11 +84,11 @@ var AssistantSettings = ({ settings }) => {
|
|
|
86
84
|
import { useSignals as _useSignals2 } from "@preact-signals/safe-react/tracking";
|
|
87
85
|
import React2, { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
88
86
|
import { addEventListener } from "@dxos/async";
|
|
89
|
-
import { Flex, ProgressBar, TextCrawl } from "@dxos/react-ui-components";
|
|
87
|
+
import { Flex, ProgressBar, TextCrawl, useExecutionGraph } from "@dxos/react-ui-components";
|
|
90
88
|
var ChatProgress = ({ chat }) => {
|
|
91
89
|
var _effect = _useSignals2();
|
|
92
90
|
try {
|
|
93
|
-
const { commits } = useExecutionGraph(chat.traceQueue, true);
|
|
91
|
+
const { commits } = useExecutionGraph(chat.traceQueue?.target, true);
|
|
94
92
|
const nodes = useMemo(() => commits.map((commit) => ({
|
|
95
93
|
id: commit.id,
|
|
96
94
|
message: commit.message
|
|
@@ -146,38 +144,135 @@ var ChatProgress = ({ chat }) => {
|
|
|
146
144
|
}
|
|
147
145
|
};
|
|
148
146
|
|
|
149
|
-
// src/components/
|
|
147
|
+
// src/components/Toolbox/Toolbox.tsx
|
|
150
148
|
import { useSignals as _useSignals3 } from "@preact-signals/safe-react/tracking";
|
|
151
|
-
import React3 from "react";
|
|
152
|
-
import {
|
|
153
|
-
|
|
149
|
+
import React3, { Fragment, useEffect as useEffect2, useState as useState2 } from "react";
|
|
150
|
+
import { Function } from "@dxos/functions";
|
|
151
|
+
import { log } from "@dxos/log";
|
|
152
|
+
import { Filter, useQuery } from "@dxos/react-client/echo";
|
|
153
|
+
import { useTranslation as useTranslation2 } from "@dxos/react-ui";
|
|
154
|
+
import { mx } from "@dxos/react-ui-theme";
|
|
155
|
+
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-assistant/src/components/Toolbox/Toolbox.tsx";
|
|
156
|
+
var Toolbox = ({ classNames, functions, services, blueprints, activeBlueprints }) => {
|
|
154
157
|
var _effect = _useSignals3();
|
|
155
158
|
try {
|
|
156
159
|
const { t } = useTranslation2(meta.id);
|
|
157
160
|
return /* @__PURE__ */ React3.createElement("div", {
|
|
158
|
-
className: "flex flex-col
|
|
159
|
-
},
|
|
161
|
+
className: mx("flex flex-col overflow-y-auto box-content", classNames)
|
|
162
|
+
}, blueprints && blueprints.length > 0 && /* @__PURE__ */ React3.createElement(Section, {
|
|
163
|
+
title: "Blueprints",
|
|
164
|
+
items: blueprints.map(({ target }) => ({
|
|
165
|
+
name: target?.name ?? "",
|
|
166
|
+
description: target?.description ?? "",
|
|
167
|
+
subitems: target?.tools.map((toolId) => ({
|
|
168
|
+
name: `\u2219 ${safeToolId(toolId)}`
|
|
169
|
+
}))
|
|
170
|
+
}))
|
|
171
|
+
}), activeBlueprints && activeBlueprints.length > 0 && /* @__PURE__ */ React3.createElement(Section, {
|
|
172
|
+
title: "Blueprints",
|
|
173
|
+
items: activeBlueprints.map(({ target }) => ({
|
|
174
|
+
name: target?.name ?? "",
|
|
175
|
+
description: target?.description ?? "",
|
|
176
|
+
subitems: target?.tools.map((toolId) => ({
|
|
177
|
+
name: `\u2219 ${safeToolId(toolId)}`
|
|
178
|
+
}))
|
|
179
|
+
}))
|
|
180
|
+
}), services && services.length > 0 && /* @__PURE__ */ React3.createElement(Section, {
|
|
181
|
+
title: "Services",
|
|
182
|
+
items: services.map(({ service: { serviceId, name, description } }) => ({
|
|
183
|
+
name: name ?? serviceId,
|
|
184
|
+
description
|
|
185
|
+
}))
|
|
186
|
+
}), functions && functions.length > 0 && /* @__PURE__ */ React3.createElement(Section, {
|
|
187
|
+
title: "Functions",
|
|
188
|
+
items: functions.map(({ name, description }) => ({
|
|
189
|
+
name,
|
|
190
|
+
description
|
|
191
|
+
}))
|
|
192
|
+
}));
|
|
193
|
+
} finally {
|
|
194
|
+
_effect.f();
|
|
195
|
+
}
|
|
196
|
+
};
|
|
197
|
+
var Section = ({ title, items, striped }) => {
|
|
198
|
+
var _effect = _useSignals3();
|
|
199
|
+
try {
|
|
200
|
+
const stripeClassNames = "odd:bg-neutral-50 dark:odd:bg-neutral-800";
|
|
201
|
+
const gridClassNames = "grid grid-cols-[8rem_1fr]";
|
|
202
|
+
const subGridClassNames = mx("col-span-full grid grid-cols-subgrid text-xs px-2", striped && stripeClassNames);
|
|
203
|
+
return /* @__PURE__ */ React3.createElement("div", null, /* @__PURE__ */ React3.createElement("h1", {
|
|
204
|
+
className: "px-2 text-sm"
|
|
205
|
+
}, title), /* @__PURE__ */ React3.createElement("div", {
|
|
206
|
+
className: gridClassNames
|
|
207
|
+
}, items.map(({ name, description, subitems }, i) => /* @__PURE__ */ React3.createElement(Fragment, {
|
|
208
|
+
key: i
|
|
209
|
+
}, name && /* @__PURE__ */ React3.createElement("div", {
|
|
210
|
+
className: subGridClassNames
|
|
211
|
+
}, /* @__PURE__ */ React3.createElement("div", {
|
|
212
|
+
className: "truncate text-primary-500"
|
|
213
|
+
}, name), /* @__PURE__ */ React3.createElement("div", {
|
|
214
|
+
className: "line-clamp-2"
|
|
215
|
+
}, description)), subitems?.map(({ name: name2, description: description2 }, i2) => /* @__PURE__ */ React3.createElement("div", {
|
|
216
|
+
key: i2,
|
|
217
|
+
className: mx(subGridClassNames, striped && stripeClassNames)
|
|
218
|
+
}, /* @__PURE__ */ React3.createElement("div", {
|
|
219
|
+
className: "truncate"
|
|
220
|
+
}, name2), /* @__PURE__ */ React3.createElement("div", {
|
|
221
|
+
className: "line-clamp-3 text-subdued"
|
|
222
|
+
}, description2)))))));
|
|
160
223
|
} finally {
|
|
161
224
|
_effect.f();
|
|
162
225
|
}
|
|
163
226
|
};
|
|
227
|
+
var ToolboxContainer = ({ classNames, space, processor }) => {
|
|
228
|
+
var _effect = _useSignals3();
|
|
229
|
+
try {
|
|
230
|
+
const services = useQuery(space, Filter.type(ServiceType));
|
|
231
|
+
const [serviceTools, setServiceTools] = useState2([]);
|
|
232
|
+
useEffect2(() => {
|
|
233
|
+
log("creating service tools...", {
|
|
234
|
+
services: services.length
|
|
235
|
+
}, {
|
|
236
|
+
F: __dxlog_file,
|
|
237
|
+
L: 117,
|
|
238
|
+
S: void 0,
|
|
239
|
+
C: (f, a) => f(...a)
|
|
240
|
+
});
|
|
241
|
+
queueMicrotask(async () => {
|
|
242
|
+
});
|
|
243
|
+
}, [
|
|
244
|
+
services
|
|
245
|
+
]);
|
|
246
|
+
const functions = useQuery(space, Filter.type(Function.Function));
|
|
247
|
+
return /* @__PURE__ */ React3.createElement(Toolbox, {
|
|
248
|
+
classNames,
|
|
249
|
+
blueprints: processor?.context.blueprints.value,
|
|
250
|
+
services: serviceTools,
|
|
251
|
+
functions
|
|
252
|
+
});
|
|
253
|
+
} finally {
|
|
254
|
+
_effect.f();
|
|
255
|
+
}
|
|
256
|
+
};
|
|
257
|
+
var safeToolId = (name) => {
|
|
258
|
+
return name.split("_").pop();
|
|
259
|
+
};
|
|
164
260
|
|
|
165
261
|
// src/components/index.ts
|
|
166
262
|
import { lazy } from "react";
|
|
167
|
-
var BlueprintContainer = lazy(() => import("./BlueprintContainer-
|
|
168
|
-
var ChatCompanion = lazy(() => import("./ChatCompanion-
|
|
169
|
-
var ChatContainer = lazy(() => import("./ChatContainer-
|
|
170
|
-
var ChatDialog = lazy(() => import("./ChatDialog-
|
|
171
|
-
var SequenceContainer = lazy(() => import("./SequenceContainer-UXOVZPZO.mjs"));
|
|
263
|
+
var BlueprintContainer = lazy(() => import("./BlueprintContainer-6GBLMK4Z.mjs"));
|
|
264
|
+
var ChatCompanion = lazy(() => import("./ChatCompanion-OV426GCP.mjs"));
|
|
265
|
+
var ChatContainer = lazy(() => import("./ChatContainer-UKY7NHFY.mjs"));
|
|
266
|
+
var ChatDialog = lazy(() => import("./ChatDialog-2BDQIEXH.mjs"));
|
|
172
267
|
|
|
173
268
|
export {
|
|
174
269
|
AssistantSettings,
|
|
175
270
|
ChatProgress,
|
|
176
|
-
|
|
271
|
+
Toolbox,
|
|
272
|
+
ToolboxContainer,
|
|
177
273
|
BlueprintContainer,
|
|
178
274
|
ChatCompanion,
|
|
179
275
|
ChatContainer,
|
|
180
|
-
ChatDialog
|
|
181
|
-
SequenceContainer
|
|
276
|
+
ChatDialog
|
|
182
277
|
};
|
|
183
|
-
//# sourceMappingURL=chunk-
|
|
278
|
+
//# sourceMappingURL=chunk-XM4BVQQR.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/components/AssistantSettings/AssistantSettings.tsx", "../../../src/components/ChatProgress/ChatProgress.tsx", "../../../src/components/Toolbox/Toolbox.tsx", "../../../src/components/index.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\nimport { DEFAULT_EDGE_MODELS, DEFAULT_OLLAMA_MODELS } from '@dxos/ai';\nimport { Input, Select, useTranslation } from '@dxos/react-ui';\nimport { ControlGroup, ControlItemInput, ControlPage, ControlSection } from '@dxos/react-ui-form';\n\nimport { meta } from '../../meta';\nimport { type Assistant, LLM_PROVIDERS } from '../../types';\n\n// TODO(burdon): Factor out default Selector.\nconst DEFAULT_VALUE = '__default';\n\nconst LLM_PROVIDER_LABELS = {\n edge: 'DXOS',\n ollama: 'Ollama',\n lmstudio: 'LM Studio',\n} as const;\n\nexport const AssistantSettings = ({ settings }: { settings: Assistant.Settings }) => {\n const { t } = useTranslation(meta.id);\n\n return (\n <ControlPage>\n <ControlSection title={t('settings title', { ns: meta.id })}>\n <ControlGroup>\n <ControlItemInput title={t('settings custom prompts label')}>\n <Input.Switch\n checked={!!settings.customPrompts}\n onCheckedChange={(checked) => (settings.customPrompts = checked)}\n />\n </ControlItemInput>\n\n <ControlItemInput title={t('settings llm provider label')}>\n <Select.Root\n value={settings.llmProvider ?? 'edge'}\n onValueChange={(value) => {\n settings.llmProvider = value === DEFAULT_VALUE ? undefined : (value as any);\n }}\n >\n <Select.TriggerButton placeholder={t('settings llm provider label')} />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n <Select.Option value={DEFAULT_VALUE}>{t('settings default label')}</Select.Option>\n {LLM_PROVIDERS.map((model) => (\n <Select.Option key={model} value={model}>\n {LLM_PROVIDER_LABELS[model]}\n </Select.Option>\n ))}\n </Select.Viewport>\n <Select.Arrow />\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </ControlItemInput>\n\n <ControlItemInput title={t('settings edge llm model label')}>\n <Select.Root\n value={settings.edgeModel ?? DEFAULT_VALUE}\n onValueChange={(value) => {\n settings.edgeModel = value === DEFAULT_VALUE ? undefined : value;\n }}\n >\n <Select.TriggerButton placeholder={t('settings default llm model label')} />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n <Select.Option value={DEFAULT_VALUE}>{t('settings default label')}</Select.Option>\n {DEFAULT_EDGE_MODELS.map((model) => (\n <Select.Option key={model} value={model}>\n {model}\n </Select.Option>\n ))}\n </Select.Viewport>\n <Select.Arrow />\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </ControlItemInput>\n\n <ControlItemInput title={t('settings ollama llm model label')}>\n <Select.Root\n value={settings.ollamaModel ?? DEFAULT_VALUE}\n onValueChange={(value) => {\n settings.ollamaModel = value === DEFAULT_VALUE ? undefined : value;\n }}\n >\n <Select.TriggerButton placeholder={t('settings default llm model label')} />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n <Select.Option value={DEFAULT_VALUE}>{t('settings default label')}</Select.Option>\n {DEFAULT_OLLAMA_MODELS.map((model) => (\n <Select.Option key={model} value={model}>\n {model}\n </Select.Option>\n ))}\n </Select.Viewport>\n <Select.Arrow />\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </ControlItemInput>\n </ControlGroup>\n </ControlSection>\n </ControlPage>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\n\nimport { addEventListener } from '@dxos/async';\nimport { Flex, ProgressBar, type ProgressBarProps, TextCrawl, useExecutionGraph } from '@dxos/react-ui-components';\n\nimport { type Assistant } from '../../types';\n\n// TODO(burdon): Reset after each session.\n// TODO(burdon): Show after delay.\n// TODO(burdon): Test with errors.\n// TODO(burdon): Filter out empty trace messages.\n\n// {\n// \"id\": \"01K3TE3C2VAXETP500QKDHK3C4_block_3\",\n// \"branch\": \"main\",\n// \"parents\": [],\n// \"icon\": \"ph--robot--regular\",\n// \"message\": \"\\n\"\n// }\n\nexport type ChatProgressProps = {\n chat: Assistant.Chat;\n};\n\nexport const ChatProgress = ({ chat }: ChatProgressProps) => {\n const { commits } = useExecutionGraph(chat.traceQueue?.target, true);\n const nodes = useMemo(() => commits.map((commit) => ({ id: commit.id, message: commit.message })), [commits]);\n const lines = useMemo(() => commits.map((commit) => commit.message), [commits]);\n\n const [index, setIndex] = useState<number | undefined>(undefined);\n const handleSelect = useCallback<NonNullable<ProgressBarProps['onSelect']>>(({ index }) => {\n setIndex((current) => {\n return current === index ? undefined : index;\n });\n }, []);\n\n const ref = useRef<HTMLDivElement>(null);\n useEffect(() => {\n if (!ref.current) {\n return;\n }\n\n return addEventListener(ref.current, 'keydown', (event) => {\n switch (event.key) {\n case 'ArrowLeft': {\n setIndex((current) => (current === undefined || current <= 0 ? 0 : current - 1));\n break;\n }\n case 'ArrowRight': {\n setIndex((current) => (current === undefined || current >= nodes.length ? nodes.length - 1 : current + 1));\n break;\n }\n }\n });\n }, [nodes.length]);\n\n return (\n <Flex column tabIndex={0} ref={ref} classNames='outline-none'>\n <ProgressBar nodes={nodes} index={index} onSelect={handleSelect} />\n <TextCrawl lines={lines} index={index} autoAdvance classNames='pis-4 text-sm text-subdued' />\n </Flex>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { type FC, Fragment, useEffect, useState } from 'react';\n\nimport { type Blueprint } from '@dxos/blueprints';\nimport { type Ref } from '@dxos/echo';\nimport { Function } from '@dxos/functions';\nimport { log } from '@dxos/log';\nimport { Filter, type Space, useQuery } from '@dxos/react-client/echo';\nimport { type ThemedClassName } from '@dxos/react-ui';\nimport { useTranslation } from '@dxos/react-ui';\nimport { mx } from '@dxos/react-ui-theme';\n\nimport { meta } from '../../meta';\nimport { type AiChatProcessor } from '../../processor';\nimport { ServiceType } from '../../types';\n\nexport type ToolboxProps = ThemedClassName<{\n services?: { service: ServiceType }[];\n functions?: Function.Function[];\n // TODO(burdon): Combine into single array.\n blueprints?: readonly Ref.Ref<Blueprint.Blueprint>[];\n activeBlueprints?: readonly Ref.Ref<Blueprint.Blueprint>[];\n}>;\n\nexport const Toolbox = ({ classNames, functions, services, blueprints, activeBlueprints }: ToolboxProps) => {\n const { t } = useTranslation(meta.id);\n\n return (\n <div className={mx('flex flex-col overflow-y-auto box-content', classNames)}>\n {blueprints && blueprints.length > 0 && (\n <Section\n title='Blueprints'\n items={blueprints.map(({ target }) => ({\n name: target?.name ?? '',\n description: target?.description ?? '',\n subitems: target?.tools.map((toolId) => ({ name: `∙ ${safeToolId(toolId)}` })),\n }))}\n />\n )}\n\n {activeBlueprints && activeBlueprints.length > 0 && (\n <Section\n title='Blueprints'\n items={activeBlueprints.map(({ target }) => ({\n name: target?.name ?? '',\n description: target?.description ?? '',\n subitems: target?.tools.map((toolId) => ({ name: `∙ ${safeToolId(toolId)}` })),\n }))}\n />\n )}\n\n {services && services.length > 0 && (\n <Section\n title='Services'\n items={services.map(({ service: { serviceId, name, description } }) => ({\n name: name ?? serviceId,\n description,\n // subitems: tools.map(({ name, description }) => ({ name: `∙ ${name}`, description })),\n }))}\n />\n )}\n\n {functions && functions.length > 0 && (\n <Section title='Functions' items={functions.map(({ name, description }) => ({ name, description }))} />\n )}\n </div>\n );\n};\n\nconst Section: FC<{\n title: string;\n items: { name: string; description?: string; subitems?: { name: string; description?: string }[] }[];\n striped?: boolean;\n}> = ({ title, items, striped }) => {\n const stripeClassNames = 'odd:bg-neutral-50 dark:odd:bg-neutral-800';\n const gridClassNames = 'grid grid-cols-[8rem_1fr]';\n const subGridClassNames = mx('col-span-full grid grid-cols-subgrid text-xs px-2', striped && stripeClassNames);\n\n return (\n <div>\n <h1 className='px-2 text-sm'>{title}</h1>\n <div className={gridClassNames}>\n {items.map(({ name, description, subitems }, i) => (\n <Fragment key={i}>\n {name && (\n <div className={subGridClassNames}>\n <div className='truncate text-primary-500'>{name}</div>\n <div className='line-clamp-2'>{description}</div>\n </div>\n )}\n {subitems?.map(({ name, description }, i) => (\n <div key={i} className={mx(subGridClassNames, striped && stripeClassNames)}>\n <div className='truncate'>{name}</div>\n <div className='line-clamp-3 text-subdued'>{description}</div>\n </div>\n ))}\n </Fragment>\n ))}\n </div>\n </div>\n );\n};\n\nexport type ToolboxContainerProps = ThemedClassName<{\n space?: Space;\n processor?: AiChatProcessor;\n}>;\n\nexport const ToolboxContainer = ({ classNames, space, processor }: ToolboxContainerProps) => {\n // Registered services.\n const services = useQuery(space, Filter.type(ServiceType));\n const [serviceTools, setServiceTools] = useState<{ service: ServiceType }[]>([]);\n useEffect(() => {\n log('creating service tools...', { services: services.length });\n queueMicrotask(async () => {\n // TODO(burdon): Fix.\n // const tools = await Promise.all(\n // services.map(async (service) => ({ service, tools: await createToolsFromService(service) })),\n // );\n // setServiceTools(tools);\n });\n }, [services]);\n\n // Deployed functions.\n const functions = useQuery(space, Filter.type(Function.Function));\n\n return (\n <Toolbox\n classNames={classNames}\n blueprints={processor?.context.blueprints.value}\n services={serviceTools}\n functions={functions}\n />\n );\n};\n\nconst safeToolId = (name: string) => {\n return name.split('_').pop();\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { lazy } from 'react';\n\nexport * from './AssistantSettings';\nexport * from './Chat';\nexport * from './ChatProgress';\nexport * from './ChatToolbar';\nexport * from './TemplateEditor';\nexport * from './Toolbox';\n\nexport const BlueprintContainer = lazy(() => import('./BlueprintContainer'));\nexport const ChatCompanion = lazy(() => import('./ChatCompanion'));\nexport const ChatContainer = lazy(() => import('./ChatContainer'));\nexport const ChatDialog = lazy(() => import('./ChatDialog'));\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React", "DEFAULT_EDGE_MODELS", "DEFAULT_OLLAMA_MODELS", "Input", "Select", "useTranslation", "ControlGroup", "ControlItemInput", "ControlPage", "ControlSection", "DEFAULT_VALUE", "LLM_PROVIDER_LABELS", "edge", "ollama", "lmstudio", "AssistantSettings", "settings", "t", "useTranslation", "meta", "id", "ControlPage", "ControlSection", "title", "ns", "ControlGroup", "ControlItemInput", "Input", "Switch", "checked", "customPrompts", "onCheckedChange", "Select", "Root", "value", "llmProvider", "onValueChange", "undefined", "TriggerButton", "placeholder", "Portal", "Content", "Viewport", "Option", "LLM_PROVIDERS", "map", "model", "key", "Arrow", "edgeModel", "DEFAULT_EDGE_MODELS", "ollamaModel", "DEFAULT_OLLAMA_MODELS", "React", "useCallback", "useEffect", "useMemo", "useRef", "useState", "addEventListener", "Flex", "ProgressBar", "TextCrawl", "useExecutionGraph", "ChatProgress", "chat", "commits", "useExecutionGraph", "traceQueue", "target", "nodes", "useMemo", "map", "commit", "id", "message", "lines", "index", "setIndex", "useState", "undefined", "handleSelect", "useCallback", "current", "ref", "useRef", "useEffect", "addEventListener", "event", "key", "length", "React", "Flex", "column", "tabIndex", "classNames", "ProgressBar", "onSelect", "TextCrawl", "autoAdvance", "React", "Fragment", "useEffect", "useState", "Function", "log", "Filter", "useQuery", "useTranslation", "mx", "Toolbox", "classNames", "functions", "services", "blueprints", "activeBlueprints", "t", "useTranslation", "meta", "id", "React", "div", "className", "mx", "length", "Section", "title", "items", "map", "target", "name", "description", "subitems", "tools", "toolId", "safeToolId", "service", "serviceId", "striped", "stripeClassNames", "gridClassNames", "subGridClassNames", "h1", "i", "Fragment", "key", "ToolboxContainer", "space", "processor", "useQuery", "Filter", "type", "ServiceType", "serviceTools", "setServiceTools", "useState", "useEffect", "log", "queueMicrotask", "Function", "context", "value", "split", "pop", "lazy", "BlueprintContainer", "lazy", "ChatCompanion", "ChatContainer", "ChatDialog"]
|
|
7
|
+
}
|
|
@@ -1,19 +1,17 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
meta
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-WE6KTH72.mjs";
|
|
5
5
|
|
|
6
6
|
// src/capabilities/capabilities.ts
|
|
7
7
|
import { defineCapability } from "@dxos/app-framework";
|
|
8
8
|
(function(AssistantCapabilities2) {
|
|
9
9
|
AssistantCapabilities2.State = defineCapability(`${meta.id}/capability/state`);
|
|
10
10
|
AssistantCapabilities2.MutableState = defineCapability(`${meta.id}/capability/state`);
|
|
11
|
-
AssistantCapabilities2.AiServiceLayer = defineCapability(`${meta.id}/capability/ai-service-factory`);
|
|
12
|
-
AssistantCapabilities2.AiModelResolver = defineCapability(`${meta.id}/capability/ai-model-resolver`);
|
|
13
11
|
})(AssistantCapabilities || (AssistantCapabilities = {}));
|
|
14
12
|
var AssistantCapabilities;
|
|
15
13
|
|
|
16
14
|
export {
|
|
17
15
|
AssistantCapabilities
|
|
18
16
|
};
|
|
19
|
-
//# sourceMappingURL=chunk-
|
|
17
|
+
//# sourceMappingURL=chunk-XQBL2SBL.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/capabilities.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { defineCapability } from '@dxos/app-framework';\nimport { type DeepReadonly } from '@dxos/util';\n\nimport { meta } from '../meta';\nimport { type Assistant } from '../types';\n\nexport namespace AssistantCapabilities {\n export type AssistantState = {\n /** Map of primary object fq id to current chat. */\n currentChat: Record<string, Assistant.Chat>;\n };\n export const State = defineCapability<DeepReadonly<AssistantState>>(`${meta.id}/capability/state`);\n export const MutableState = defineCapability<AssistantState>(`${meta.id}/capability/state`);\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;AAIA,SAASA,wBAAwB;UAMhBC,wBAAAA;yBAKFC,QAAQC,iBAA+C,GAAGC,KAAKC,EAAE,mBAAmB;yBACpFC,eAAeH,iBAAiC,GAAGC,KAAKC,EAAE,mBAAmB;AAC5F,GAPiBJ,0BAAAA,wBAAAA,CAAAA,EAAAA;;",
|
|
6
|
+
"names": ["defineCapability", "AssistantCapabilities", "State", "defineCapability", "meta", "id", "MutableState"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,380 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
|
|
3
|
+
// src/toolkits/AssistantToolkit.ts
|
|
4
|
+
import * as Tool from "@effect/ai/Tool";
|
|
5
|
+
import * as Toolkit from "@effect/ai/Toolkit";
|
|
6
|
+
import * as Effect from "effect/Effect";
|
|
7
|
+
import * as Record from "effect/Record";
|
|
8
|
+
import * as Schema from "effect/Schema";
|
|
9
|
+
import { AiContextService, ArtifactId } from "@dxos/assistant";
|
|
10
|
+
import { Ref } from "@dxos/echo";
|
|
11
|
+
import { DatabaseService } from "@dxos/functions";
|
|
12
|
+
import { trim } from "@dxos/util";
|
|
13
|
+
var Toolkit$ = Toolkit.make(Tool.make("add-to-context", {
|
|
14
|
+
description: trim`
|
|
15
|
+
Adds the object to the chat context.
|
|
16
|
+
`,
|
|
17
|
+
parameters: {
|
|
18
|
+
id: ArtifactId.annotations({
|
|
19
|
+
description: "The ID of the document to read."
|
|
20
|
+
})
|
|
21
|
+
},
|
|
22
|
+
success: Schema.Void,
|
|
23
|
+
failure: Schema.Never,
|
|
24
|
+
dependencies: [
|
|
25
|
+
AiContextService,
|
|
26
|
+
DatabaseService
|
|
27
|
+
]
|
|
28
|
+
}));
|
|
29
|
+
(function(AssistantToolkit2) {
|
|
30
|
+
AssistantToolkit2.Toolkit = Toolkit$;
|
|
31
|
+
AssistantToolkit2.tools = Record.keys(Toolkit$.tools);
|
|
32
|
+
AssistantToolkit2.createLayer = (_context) => Toolkit$.toLayer({
|
|
33
|
+
"add-to-context": Effect.fnUntraced(function* ({ id }) {
|
|
34
|
+
const { binder } = yield* AiContextService;
|
|
35
|
+
const { db } = yield* DatabaseService;
|
|
36
|
+
const ref = Ref.fromDXN(ArtifactId.toDXN(id, db.spaceId));
|
|
37
|
+
yield* Effect.promise(() => binder.bind({
|
|
38
|
+
blueprints: [],
|
|
39
|
+
objects: [
|
|
40
|
+
ref
|
|
41
|
+
]
|
|
42
|
+
}));
|
|
43
|
+
})
|
|
44
|
+
});
|
|
45
|
+
})(AssistantToolkit || (AssistantToolkit = {}));
|
|
46
|
+
var AssistantToolkit;
|
|
47
|
+
|
|
48
|
+
// src/toolkits/SystemToolkit.ts
|
|
49
|
+
import * as Tool2 from "@effect/ai/Tool";
|
|
50
|
+
import * as Toolkit2 from "@effect/ai/Toolkit";
|
|
51
|
+
import * as Effect2 from "effect/Effect";
|
|
52
|
+
import * as Record2 from "effect/Record";
|
|
53
|
+
import * as Schema2 from "effect/Schema";
|
|
54
|
+
import { Capabilities, createIntent } from "@dxos/app-framework";
|
|
55
|
+
import { ArtifactId as ArtifactId2 } from "@dxos/assistant";
|
|
56
|
+
import { DXN, Filter, Obj, Relation, SchemaNotFoundError, Tag, Type } from "@dxos/echo";
|
|
57
|
+
import { DatabaseService as DatabaseService2 } from "@dxos/functions";
|
|
58
|
+
import { invariant } from "@dxos/invariant";
|
|
59
|
+
import { ClientCapabilities } from "@dxos/plugin-client";
|
|
60
|
+
import { SpaceCapabilities, getActiveSpace } from "@dxos/plugin-space";
|
|
61
|
+
import { SpaceAction } from "@dxos/plugin-space/types";
|
|
62
|
+
import { DataType } from "@dxos/schema";
|
|
63
|
+
import { trim as trim2 } from "@dxos/util";
|
|
64
|
+
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-assistant/src/toolkits/SystemToolkit.ts";
|
|
65
|
+
var Toolkit$2 = Toolkit2.make(
|
|
66
|
+
//
|
|
67
|
+
// Schema
|
|
68
|
+
//
|
|
69
|
+
Tool2.make("schema-list", {
|
|
70
|
+
description: trim2`
|
|
71
|
+
Lists schemas definitions.
|
|
72
|
+
`,
|
|
73
|
+
parameters: {
|
|
74
|
+
// TODO(wittjosiah): Remove this once parameter-less tools are fixed.
|
|
75
|
+
limit: Schema2.Number
|
|
76
|
+
},
|
|
77
|
+
// TODO(dmaretskyi): Effect returns ({ result, encodedResult })
|
|
78
|
+
success: Schema2.Any,
|
|
79
|
+
failure: Schema2.Never
|
|
80
|
+
}),
|
|
81
|
+
Tool2.make("schema-add", {
|
|
82
|
+
description: trim2`
|
|
83
|
+
Adds a schema to the space.
|
|
84
|
+
The name will be used when displayed to the user.
|
|
85
|
+
The typename must be in the format of "example.com/type/Type".
|
|
86
|
+
`,
|
|
87
|
+
parameters: {
|
|
88
|
+
name: Schema2.String,
|
|
89
|
+
typename: Schema2.String,
|
|
90
|
+
jsonSchema: Schema2.Any
|
|
91
|
+
},
|
|
92
|
+
success: Schema2.Any,
|
|
93
|
+
failure: Schema2.Never
|
|
94
|
+
}),
|
|
95
|
+
//
|
|
96
|
+
// Objects
|
|
97
|
+
//
|
|
98
|
+
Tool2.make("object-create", {
|
|
99
|
+
description: trim2`
|
|
100
|
+
Creates a new object and adds it to the current space.
|
|
101
|
+
Get the schema from the schema-list tool and ensure that the data matches the corresponding schema.
|
|
102
|
+
`,
|
|
103
|
+
parameters: {
|
|
104
|
+
typename: Schema2.String,
|
|
105
|
+
data: Schema2.Any
|
|
106
|
+
},
|
|
107
|
+
success: Schema2.Any,
|
|
108
|
+
failure: Schema2.Never
|
|
109
|
+
}),
|
|
110
|
+
Tool2.make("object-remove", {
|
|
111
|
+
description: trim2`
|
|
112
|
+
Removes an object or relation from the database.
|
|
113
|
+
`,
|
|
114
|
+
parameters: {
|
|
115
|
+
id: ArtifactId2.annotations({
|
|
116
|
+
description: "The ID of the object."
|
|
117
|
+
})
|
|
118
|
+
},
|
|
119
|
+
success: Schema2.Any,
|
|
120
|
+
failure: Schema2.Never
|
|
121
|
+
}),
|
|
122
|
+
//
|
|
123
|
+
// Relations
|
|
124
|
+
//
|
|
125
|
+
Tool2.make("relation-create", {
|
|
126
|
+
description: trim2`
|
|
127
|
+
Creates a new relation and adds it to the current space.
|
|
128
|
+
Get the schema from the schema-list tool and ensure that the data matches the corresponding schema.
|
|
129
|
+
`,
|
|
130
|
+
parameters: {
|
|
131
|
+
typename: Schema2.String,
|
|
132
|
+
source: ArtifactId2.annotations({
|
|
133
|
+
description: "The ID of the source object."
|
|
134
|
+
}),
|
|
135
|
+
target: ArtifactId2.annotations({
|
|
136
|
+
description: "The ID of the target object."
|
|
137
|
+
}),
|
|
138
|
+
data: Schema2.Any.annotations({
|
|
139
|
+
description: "The data to be stored in the relation."
|
|
140
|
+
})
|
|
141
|
+
},
|
|
142
|
+
success: Schema2.Any,
|
|
143
|
+
failure: Schema2.Never
|
|
144
|
+
}),
|
|
145
|
+
//
|
|
146
|
+
// Tags
|
|
147
|
+
//
|
|
148
|
+
Tool2.make("tag-add", {
|
|
149
|
+
description: trim2`
|
|
150
|
+
Adds a tag to an object.
|
|
151
|
+
Tags are objects of type ${Tag.Tag.typename}.
|
|
152
|
+
`,
|
|
153
|
+
parameters: {
|
|
154
|
+
tagId: ArtifactId2.annotations({
|
|
155
|
+
description: "The ID of the tag."
|
|
156
|
+
}),
|
|
157
|
+
objectId: ArtifactId2.annotations({
|
|
158
|
+
description: "The ID of the object."
|
|
159
|
+
})
|
|
160
|
+
},
|
|
161
|
+
success: Schema2.Any,
|
|
162
|
+
failure: Schema2.Never
|
|
163
|
+
}),
|
|
164
|
+
Tool2.make("tag-remove", {
|
|
165
|
+
description: trim2`
|
|
166
|
+
Removes a tag from an object.
|
|
167
|
+
Tags are objects of type ${Tag.Tag.typename}.
|
|
168
|
+
`,
|
|
169
|
+
parameters: {
|
|
170
|
+
tagId: ArtifactId2.annotations({
|
|
171
|
+
description: "The ID of the tag."
|
|
172
|
+
}),
|
|
173
|
+
objectId: ArtifactId2.annotations({
|
|
174
|
+
description: "The ID of the object."
|
|
175
|
+
})
|
|
176
|
+
},
|
|
177
|
+
success: Schema2.Any,
|
|
178
|
+
failure: Schema2.Never
|
|
179
|
+
})
|
|
180
|
+
);
|
|
181
|
+
(function(SystemToolkit2) {
|
|
182
|
+
SystemToolkit2.Toolkit = Toolkit$2;
|
|
183
|
+
SystemToolkit2.tools = Record2.keys(Toolkit$2.tools);
|
|
184
|
+
SystemToolkit2.createLayer = (context) => Toolkit$2.toLayer({
|
|
185
|
+
"schema-list": () => {
|
|
186
|
+
const space = getActiveSpace(context);
|
|
187
|
+
invariant(space, "No active space", {
|
|
188
|
+
F: __dxlog_file,
|
|
189
|
+
L: 162,
|
|
190
|
+
S: this,
|
|
191
|
+
A: [
|
|
192
|
+
"space",
|
|
193
|
+
"'No active space'"
|
|
194
|
+
]
|
|
195
|
+
});
|
|
196
|
+
return Effect2.gen(function* () {
|
|
197
|
+
const registered = context.getCapabilities(ClientCapabilities.Schema).flat().map((schema) => {
|
|
198
|
+
const meta = Type.getMeta(schema);
|
|
199
|
+
return {
|
|
200
|
+
typename: Type.getTypename(schema),
|
|
201
|
+
jsonSchema: Type.toJsonSchema(schema),
|
|
202
|
+
kind: meta?.sourceSchema ? "relation" : "record"
|
|
203
|
+
};
|
|
204
|
+
});
|
|
205
|
+
const forms = context.getCapabilities(SpaceCapabilities.ObjectForm).map((form) => ({
|
|
206
|
+
typename: Type.getTypename(form.objectSchema),
|
|
207
|
+
jsonSchema: Type.toJsonSchema(form.objectSchema),
|
|
208
|
+
kind: "item"
|
|
209
|
+
}));
|
|
210
|
+
const schemas = [
|
|
211
|
+
...registered,
|
|
212
|
+
...forms
|
|
213
|
+
];
|
|
214
|
+
if (space) {
|
|
215
|
+
const { objects } = yield* DatabaseService2.runQuery(Filter.type(DataType.StoredSchema));
|
|
216
|
+
schemas.push(...objects.map((object) => ({
|
|
217
|
+
typename: object.typename,
|
|
218
|
+
jsonSchema: object.jsonSchema,
|
|
219
|
+
kind: "record"
|
|
220
|
+
})));
|
|
221
|
+
}
|
|
222
|
+
return schemas;
|
|
223
|
+
}).pipe(Effect2.provide(DatabaseService2.layer(space.db)));
|
|
224
|
+
},
|
|
225
|
+
"schema-add": ({ name, typename, jsonSchema }) => {
|
|
226
|
+
return Effect2.gen(function* () {
|
|
227
|
+
const { dispatch } = context.getCapability(Capabilities.IntentDispatcher);
|
|
228
|
+
const space = getActiveSpace(context);
|
|
229
|
+
invariant(space, "No active space", {
|
|
230
|
+
F: __dxlog_file,
|
|
231
|
+
L: 205,
|
|
232
|
+
S: this,
|
|
233
|
+
A: [
|
|
234
|
+
"space",
|
|
235
|
+
"'No active space'"
|
|
236
|
+
]
|
|
237
|
+
});
|
|
238
|
+
const schema = Type.toEffectSchema(jsonSchema).pipe(Type.Obj({
|
|
239
|
+
typename,
|
|
240
|
+
version: "0.1.0"
|
|
241
|
+
}));
|
|
242
|
+
yield* dispatch(createIntent(SpaceAction.AddSchema, {
|
|
243
|
+
space,
|
|
244
|
+
name,
|
|
245
|
+
typename,
|
|
246
|
+
schema
|
|
247
|
+
}));
|
|
248
|
+
}).pipe(Effect2.orDie);
|
|
249
|
+
},
|
|
250
|
+
"object-create": ({ typename, data }) => {
|
|
251
|
+
const { dispatch } = context.getCapability(Capabilities.IntentDispatcher);
|
|
252
|
+
const space = getActiveSpace(context);
|
|
253
|
+
invariant(space, "No active space", {
|
|
254
|
+
F: __dxlog_file,
|
|
255
|
+
L: 215,
|
|
256
|
+
S: this,
|
|
257
|
+
A: [
|
|
258
|
+
"space",
|
|
259
|
+
"'No active space'"
|
|
260
|
+
]
|
|
261
|
+
});
|
|
262
|
+
return Effect2.gen(function* () {
|
|
263
|
+
const schemas = context.getCapabilities(ClientCapabilities.Schema).flat();
|
|
264
|
+
const { objects } = yield* DatabaseService2.runQuery(Filter.type(DataType.StoredSchema));
|
|
265
|
+
schemas.push(...objects.map((object2) => Type.toEffectSchema(object2.jsonSchema)));
|
|
266
|
+
const schema = schemas.find((schema2) => Type.getTypename(schema2) === typename);
|
|
267
|
+
if (!schema) {
|
|
268
|
+
throw new SchemaNotFoundError(typename);
|
|
269
|
+
}
|
|
270
|
+
const object = Obj.make(schema, data);
|
|
271
|
+
yield* dispatch(createIntent(SpaceAction.AddObject, {
|
|
272
|
+
object,
|
|
273
|
+
target: space,
|
|
274
|
+
hidden: true
|
|
275
|
+
}));
|
|
276
|
+
return object;
|
|
277
|
+
}).pipe(Effect2.provide(DatabaseService2.layer(space.db)), Effect2.orDie);
|
|
278
|
+
},
|
|
279
|
+
"object-remove": ({ id }) => {
|
|
280
|
+
const { dispatch } = context.getCapability(Capabilities.IntentDispatcher);
|
|
281
|
+
const space = getActiveSpace(context);
|
|
282
|
+
invariant(space, "No active space", {
|
|
283
|
+
F: __dxlog_file,
|
|
284
|
+
L: 235,
|
|
285
|
+
S: this,
|
|
286
|
+
A: [
|
|
287
|
+
"space",
|
|
288
|
+
"'No active space'"
|
|
289
|
+
]
|
|
290
|
+
});
|
|
291
|
+
return Effect2.gen(function* () {
|
|
292
|
+
const object = yield* DatabaseService2.resolve(DXN.parse(id));
|
|
293
|
+
yield* dispatch(createIntent(SpaceAction.RemoveObjects, {
|
|
294
|
+
objects: [
|
|
295
|
+
object
|
|
296
|
+
]
|
|
297
|
+
}));
|
|
298
|
+
return object;
|
|
299
|
+
}).pipe(Effect2.provide(DatabaseService2.layer(space.db)), Effect2.orDie);
|
|
300
|
+
},
|
|
301
|
+
"relation-create": ({ typename, source, target, data }) => {
|
|
302
|
+
const { dispatch } = context.getCapability(Capabilities.IntentDispatcher);
|
|
303
|
+
const space = getActiveSpace(context);
|
|
304
|
+
invariant(space, "No active space", {
|
|
305
|
+
F: __dxlog_file,
|
|
306
|
+
L: 247,
|
|
307
|
+
S: this,
|
|
308
|
+
A: [
|
|
309
|
+
"space",
|
|
310
|
+
"'No active space'"
|
|
311
|
+
]
|
|
312
|
+
});
|
|
313
|
+
return Effect2.gen(function* () {
|
|
314
|
+
const schemas = context.getCapabilities(ClientCapabilities.Schema).flat();
|
|
315
|
+
const schema = schemas.find((schema2) => Type.getTypename(schema2) === typename);
|
|
316
|
+
if (!schema) {
|
|
317
|
+
throw new SchemaNotFoundError(typename);
|
|
318
|
+
}
|
|
319
|
+
const sourceObj = yield* DatabaseService2.resolve(DXN.parse(source));
|
|
320
|
+
const targetObj = yield* DatabaseService2.resolve(DXN.parse(target));
|
|
321
|
+
const relation = Relation.make(schema, {
|
|
322
|
+
[Relation.Source]: sourceObj,
|
|
323
|
+
[Relation.Target]: targetObj,
|
|
324
|
+
...data
|
|
325
|
+
});
|
|
326
|
+
yield* dispatch(createIntent(SpaceAction.AddObject, {
|
|
327
|
+
object: relation,
|
|
328
|
+
target: space,
|
|
329
|
+
hidden: true
|
|
330
|
+
}));
|
|
331
|
+
return relation;
|
|
332
|
+
}).pipe(Effect2.provide(DatabaseService2.layer(space.db)), Effect2.orDie);
|
|
333
|
+
},
|
|
334
|
+
"tag-add": ({ tagId, objectId }) => {
|
|
335
|
+
const space = getActiveSpace(context);
|
|
336
|
+
invariant(space, "No active space", {
|
|
337
|
+
F: __dxlog_file,
|
|
338
|
+
L: 270,
|
|
339
|
+
S: this,
|
|
340
|
+
A: [
|
|
341
|
+
"space",
|
|
342
|
+
"'No active space'"
|
|
343
|
+
]
|
|
344
|
+
});
|
|
345
|
+
return Effect2.gen(function* () {
|
|
346
|
+
const object = yield* DatabaseService2.resolve(DXN.parse(objectId));
|
|
347
|
+
const meta = Obj.getMeta(object);
|
|
348
|
+
meta.tags = [
|
|
349
|
+
DXN.parse(tagId).toString()
|
|
350
|
+
];
|
|
351
|
+
return object;
|
|
352
|
+
}).pipe(Effect2.provide(DatabaseService2.layer(space.db)), Effect2.orDie);
|
|
353
|
+
},
|
|
354
|
+
"tag-remove": ({ tagId, objectId }) => {
|
|
355
|
+
const space = getActiveSpace(context);
|
|
356
|
+
invariant(space, "No active space", {
|
|
357
|
+
F: __dxlog_file,
|
|
358
|
+
L: 282,
|
|
359
|
+
S: this,
|
|
360
|
+
A: [
|
|
361
|
+
"space",
|
|
362
|
+
"'No active space'"
|
|
363
|
+
]
|
|
364
|
+
});
|
|
365
|
+
return Effect2.gen(function* () {
|
|
366
|
+
const object = yield* DatabaseService2.resolve(DXN.parse(objectId));
|
|
367
|
+
const meta = Obj.getMeta(object);
|
|
368
|
+
meta.tags = meta.tags?.filter((tag) => tag !== DXN.parse(tagId).toString());
|
|
369
|
+
return object;
|
|
370
|
+
}).pipe(Effect2.provide(DatabaseService2.layer(space.db)), Effect2.orDie);
|
|
371
|
+
}
|
|
372
|
+
});
|
|
373
|
+
})(SystemToolkit || (SystemToolkit = {}));
|
|
374
|
+
var SystemToolkit;
|
|
375
|
+
|
|
376
|
+
export {
|
|
377
|
+
AssistantToolkit,
|
|
378
|
+
SystemToolkit
|
|
379
|
+
};
|
|
380
|
+
//# sourceMappingURL=chunk-YIO5MEPR.mjs.map
|