@dxos/plugin-assistant 0.8.1-staging.5be625a → 0.8.1-staging.9eaf14f
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/{AssistantDialog-EIUUSXDS.mjs → AssistantDialog-YSHMAHW5.mjs} +9 -9
- package/dist/lib/browser/AssistantDialog-YSHMAHW5.mjs.map +7 -0
- package/dist/lib/browser/{ChatContainer-NHHA6CSP.mjs → ChatContainer-V5GP7DYF.mjs} +11 -11
- package/dist/lib/browser/ChatContainer-V5GP7DYF.mjs.map +7 -0
- package/dist/lib/browser/{TemplateContainer-7IQ6V5AD.mjs → TemplateContainer-K4EJNGIL.mjs} +7 -7
- package/dist/lib/browser/{TemplateContainer-7IQ6V5AD.mjs.map → TemplateContainer-K4EJNGIL.mjs.map} +2 -2
- package/dist/lib/browser/{ai-client-BAPVMSNX.mjs → ai-client-CDZLSNXE.mjs} +4 -4
- package/dist/lib/browser/{app-graph-builder-DTCUWBKB.mjs → app-graph-builder-MF5EVDWW.mjs} +63 -8
- package/dist/lib/browser/app-graph-builder-MF5EVDWW.mjs.map +7 -0
- package/dist/lib/browser/{chunk-AF7VQAKS.mjs → chunk-3HCI5FIL.mjs} +2 -2
- package/dist/lib/browser/{chunk-KGIACFAX.mjs → chunk-FMB7RGMP.mjs} +69 -65
- package/dist/lib/browser/{chunk-KGIACFAX.mjs.map → chunk-FMB7RGMP.mjs.map} +3 -3
- package/dist/lib/browser/chunk-IAMR2FAE.mjs +183 -0
- package/dist/lib/browser/chunk-IAMR2FAE.mjs.map +7 -0
- package/dist/lib/browser/{chunk-25APJ3ZK.mjs → chunk-KYMKVE6M.mjs} +10 -10
- package/dist/lib/browser/{chunk-6FTPLBSC.mjs → chunk-NFUHCW2J.mjs} +3 -3
- package/dist/lib/browser/{chunk-SVUCJXGN.mjs → chunk-TXJWGWJ7.mjs} +3 -3
- package/dist/lib/browser/index.mjs +18 -32
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-U57FXP3I.mjs → intent-resolver-WJGLKKVO.mjs} +5 -6
- package/dist/lib/browser/{intent-resolver-U57FXP3I.mjs.map → intent-resolver-WJGLKKVO.mjs.map} +3 -3
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-surface-YNN5NYJW.mjs → react-surface-57VRDOQT.mjs} +34 -14
- package/dist/lib/browser/react-surface-57VRDOQT.mjs.map +7 -0
- package/dist/lib/browser/{settings-VAW6UWFL.mjs → settings-U6UFQX32.mjs} +4 -4
- package/dist/lib/browser/types/index.mjs +2 -2
- package/dist/lib/node/{AssistantDialog-GT7R7MKH.cjs → AssistantDialog-YI2BSGSX.cjs} +12 -12
- package/dist/lib/node/AssistantDialog-YI2BSGSX.cjs.map +7 -0
- package/dist/lib/node/{ChatContainer-JUZOEZZ7.cjs → ChatContainer-ZJ5JXF6A.cjs} +15 -15
- package/dist/lib/node/ChatContainer-ZJ5JXF6A.cjs.map +7 -0
- package/dist/lib/node/{TemplateContainer-VPAZRFQA.cjs → TemplateContainer-XWFYJB4T.cjs} +12 -12
- package/dist/lib/node/{TemplateContainer-VPAZRFQA.cjs.map → TemplateContainer-XWFYJB4T.cjs.map} +2 -2
- package/dist/lib/node/{ai-client-5ESLYXAV.cjs → ai-client-URCCYU6B.cjs} +8 -8
- package/dist/lib/node/{app-graph-builder-3P6WSON2.cjs → app-graph-builder-N5ZUUI2Z.cjs} +82 -27
- package/dist/lib/node/app-graph-builder-N5ZUUI2Z.cjs.map +7 -0
- package/dist/lib/node/{chunk-KLSNCP34.cjs → chunk-APRU3QWK.cjs} +7 -8
- package/dist/lib/node/chunk-APRU3QWK.cjs.map +7 -0
- package/dist/lib/node/{chunk-VRXFIS4X.cjs → chunk-GBUNQ257.cjs} +6 -6
- package/dist/lib/node/{chunk-U6J2GO7I.cjs → chunk-Q5XWEMHB.cjs} +4 -4
- package/dist/lib/node/{chunk-JAB6KLPP.cjs → chunk-RPBKMP2E.cjs} +50 -46
- package/dist/lib/node/{chunk-JAB6KLPP.cjs.map → chunk-RPBKMP2E.cjs.map} +3 -3
- package/dist/lib/node/{chunk-N3SW6DJ6.cjs → chunk-XI2ARIEO.cjs} +6 -6
- package/dist/lib/node/{chunk-G2HY3UJ4.cjs → chunk-ZKOC4ZFY.cjs} +14 -14
- package/dist/lib/node/index.cjs +62 -76
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/{intent-resolver-YIFAMM3B.cjs → intent-resolver-R3OSTIMH.cjs} +11 -12
- package/dist/lib/node/intent-resolver-R3OSTIMH.cjs.map +7 -0
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/{react-surface-IDGIN55C.cjs → react-surface-NUQTM6MS.cjs} +46 -26
- package/dist/lib/node/react-surface-NUQTM6MS.cjs.map +7 -0
- package/dist/lib/node/{settings-2FEYGLYU.cjs → settings-TXGRCYAL.cjs} +8 -8
- package/dist/lib/node/types/index.cjs +13 -13
- package/dist/lib/node/types/index.cjs.map +1 -1
- package/dist/lib/node-esm/{AssistantDialog-JMBFM6QH.mjs → AssistantDialog-U2FQX5TD.mjs} +9 -9
- package/dist/lib/node-esm/AssistantDialog-U2FQX5TD.mjs.map +7 -0
- package/dist/lib/node-esm/{ChatContainer-ZNN5CMVL.mjs → ChatContainer-QW3OOXTT.mjs} +11 -11
- package/dist/lib/node-esm/ChatContainer-QW3OOXTT.mjs.map +7 -0
- package/dist/lib/node-esm/{TemplateContainer-YLA6BJY6.mjs → TemplateContainer-EUM2X65J.mjs} +7 -7
- package/dist/lib/node-esm/{TemplateContainer-YLA6BJY6.mjs.map → TemplateContainer-EUM2X65J.mjs.map} +2 -2
- package/dist/lib/node-esm/{ai-client-XYZ5N7CR.mjs → ai-client-WMHS5EGV.mjs} +4 -4
- package/dist/lib/node-esm/{app-graph-builder-PMAQLTTN.mjs → app-graph-builder-DWBNIMHM.mjs} +63 -8
- package/dist/lib/node-esm/app-graph-builder-DWBNIMHM.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-2CIYX3SD.mjs → chunk-6JK5HEUQ.mjs} +3 -3
- package/dist/lib/node-esm/{chunk-N6BVC2C2.mjs → chunk-ECRK6TUQ.mjs} +2 -2
- package/dist/lib/node-esm/{chunk-SMUINDXQ.mjs → chunk-GBBXIW5F.mjs} +10 -10
- package/dist/lib/node-esm/{chunk-PK5JCOYB.mjs → chunk-MVDAY3CZ.mjs} +69 -65
- package/dist/lib/node-esm/{chunk-PK5JCOYB.mjs.map → chunk-MVDAY3CZ.mjs.map} +3 -3
- package/dist/lib/node-esm/chunk-MXK2EANZ.mjs +184 -0
- package/dist/lib/node-esm/chunk-MXK2EANZ.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-J63VQFQO.mjs → chunk-PBZA7XJR.mjs} +3 -3
- package/dist/lib/node-esm/index.mjs +18 -32
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-SQ4HLL5L.mjs → intent-resolver-H32TL4X6.mjs} +5 -6
- package/dist/lib/node-esm/{intent-resolver-SQ4HLL5L.mjs.map → intent-resolver-H32TL4X6.mjs.map} +3 -3
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-surface-424JZTZ4.mjs → react-surface-JBVZF6CP.mjs} +34 -14
- package/dist/lib/node-esm/react-surface-JBVZF6CP.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-VHR5KT4J.mjs → settings-DZU5PNXM.mjs} +4 -4
- package/dist/lib/node-esm/types/index.mjs +2 -2
- package/dist/types/src/AssistantPlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
- package/dist/types/src/components/AmbientDialog/AmbientDialog.stories.d.ts.map +1 -1
- package/dist/types/src/components/ChatContainer.d.ts +4 -2
- package/dist/types/src/components/ChatContainer.d.ts.map +1 -1
- package/dist/types/src/components/TemplateEditor/TemplateEditor.stories.d.ts +3 -3
- package/dist/types/src/components/TemplateEditor/TemplateEditor.stories.d.ts.map +1 -1
- package/dist/types/src/components/Thread/ThreadContainer.d.ts +2 -0
- package/dist/types/src/components/Thread/ThreadContainer.d.ts.map +1 -1
- package/dist/types/src/components/Thread/ThreadContainer.stories.d.ts +3 -3
- package/dist/types/src/components/Thread/ThreadContainer.stories.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +3 -2
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/hooks/useChatProcessor.d.ts +3 -1
- package/dist/types/src/hooks/useChatProcessor.d.ts.map +1 -1
- package/dist/types/src/hooks/useMessageQueue.d.ts +1 -1
- package/dist/types/src/translations.d.ts +3 -0
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/chat.d.ts +4 -6
- package/dist/types/src/types/chat.d.ts.map +1 -1
- package/package.json +57 -55
- package/src/AssistantPlugin.tsx +8 -19
- package/src/capabilities/app-graph-builder.ts +53 -2
- package/src/capabilities/intent-resolver.ts +3 -2
- package/src/capabilities/react-surface.tsx +25 -8
- package/src/components/AmbientDialog/AmbientDialog.stories.tsx +3 -1
- package/src/components/AssistantDialog.tsx +1 -1
- package/src/components/ChatContainer.tsx +18 -4
- package/src/components/Prompt/PromptBar.tsx +2 -2
- package/src/components/TemplateContainer.tsx +1 -1
- package/src/components/TemplateEditor/TemplateEditor.stories.tsx +4 -4
- package/src/components/TemplateEditor/TemplateForm.stories.tsx +2 -2
- package/src/components/Thread/Thread.stories.tsx +3 -3
- package/src/components/Thread/ThreadContainer.stories.tsx +4 -4
- package/src/components/Thread/ThreadContainer.tsx +4 -1
- package/src/components/Toolbox/Toolbox.stories.tsx +2 -2
- package/src/hooks/processor.ts +1 -1
- package/src/hooks/useChatProcessor.tsx +12 -4
- package/src/hooks/useMessageQueue.ts +2 -2
- package/src/translations.ts +1 -0
- package/src/types/chat.ts +2 -3
- package/dist/lib/browser/AssistantDialog-EIUUSXDS.mjs.map +0 -7
- package/dist/lib/browser/ChatContainer-NHHA6CSP.mjs.map +0 -7
- package/dist/lib/browser/app-graph-builder-DTCUWBKB.mjs.map +0 -7
- package/dist/lib/browser/chunk-X6ALDUA5.mjs +0 -184
- package/dist/lib/browser/chunk-X6ALDUA5.mjs.map +0 -7
- package/dist/lib/browser/react-surface-YNN5NYJW.mjs.map +0 -7
- package/dist/lib/node/AssistantDialog-GT7R7MKH.cjs.map +0 -7
- package/dist/lib/node/ChatContainer-JUZOEZZ7.cjs.map +0 -7
- package/dist/lib/node/app-graph-builder-3P6WSON2.cjs.map +0 -7
- package/dist/lib/node/chunk-KLSNCP34.cjs.map +0 -7
- package/dist/lib/node/intent-resolver-YIFAMM3B.cjs.map +0 -7
- package/dist/lib/node/react-surface-IDGIN55C.cjs.map +0 -7
- package/dist/lib/node-esm/AssistantDialog-JMBFM6QH.mjs.map +0 -7
- package/dist/lib/node-esm/ChatContainer-ZNN5CMVL.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-builder-PMAQLTTN.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-NMMRHHAR.mjs +0 -185
- package/dist/lib/node-esm/chunk-NMMRHHAR.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-424JZTZ4.mjs.map +0 -7
- package/dist/types/src/hooks/email.d.ts +0 -4
- package/dist/types/src/hooks/email.d.ts.map +0 -1
- package/src/hooks/email.ts +0 -49
- /package/dist/lib/browser/{ai-client-BAPVMSNX.mjs.map → ai-client-CDZLSNXE.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-AF7VQAKS.mjs.map → chunk-3HCI5FIL.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-25APJ3ZK.mjs.map → chunk-KYMKVE6M.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-6FTPLBSC.mjs.map → chunk-NFUHCW2J.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-SVUCJXGN.mjs.map → chunk-TXJWGWJ7.mjs.map} +0 -0
- /package/dist/lib/browser/{settings-VAW6UWFL.mjs.map → settings-U6UFQX32.mjs.map} +0 -0
- /package/dist/lib/node/{ai-client-5ESLYXAV.cjs.map → ai-client-URCCYU6B.cjs.map} +0 -0
- /package/dist/lib/node/{chunk-VRXFIS4X.cjs.map → chunk-GBUNQ257.cjs.map} +0 -0
- /package/dist/lib/node/{chunk-U6J2GO7I.cjs.map → chunk-Q5XWEMHB.cjs.map} +0 -0
- /package/dist/lib/node/{chunk-N3SW6DJ6.cjs.map → chunk-XI2ARIEO.cjs.map} +0 -0
- /package/dist/lib/node/{chunk-G2HY3UJ4.cjs.map → chunk-ZKOC4ZFY.cjs.map} +0 -0
- /package/dist/lib/node/{settings-2FEYGLYU.cjs.map → settings-TXGRCYAL.cjs.map} +0 -0
- /package/dist/lib/node-esm/{ai-client-XYZ5N7CR.mjs.map → ai-client-WMHS5EGV.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-2CIYX3SD.mjs.map → chunk-6JK5HEUQ.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-N6BVC2C2.mjs.map → chunk-ECRK6TUQ.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-SMUINDXQ.mjs.map → chunk-GBBXIW5F.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-J63VQFQO.mjs.map → chunk-PBZA7XJR.mjs.map} +0 -0
- /package/dist/lib/node-esm/{settings-VHR5KT4J.mjs.map → settings-DZU5PNXM.mjs.map} +0 -0
|
@@ -26,16 +26,16 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
mod
|
|
27
27
|
));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var AssistantDialog_YI2BSGSX_exports = {};
|
|
30
|
+
__export(AssistantDialog_YI2BSGSX_exports, {
|
|
31
31
|
AssistantDialog: () => AssistantDialog,
|
|
32
32
|
default: () => AssistantDialog_default
|
|
33
33
|
});
|
|
34
|
-
module.exports = __toCommonJS(
|
|
35
|
-
var
|
|
36
|
-
var
|
|
37
|
-
var
|
|
38
|
-
var
|
|
34
|
+
module.exports = __toCommonJS(AssistantDialog_YI2BSGSX_exports);
|
|
35
|
+
var import_chunk_RPBKMP2E = require("./chunk-RPBKMP2E.cjs");
|
|
36
|
+
var import_chunk_GBUNQ257 = require("./chunk-GBUNQ257.cjs");
|
|
37
|
+
var import_chunk_APRU3QWK = require("./chunk-APRU3QWK.cjs");
|
|
38
|
+
var import_chunk_Q5XWEMHB = require("./chunk-Q5XWEMHB.cjs");
|
|
39
39
|
var import_react = __toESM(require("react"));
|
|
40
40
|
var import_app_framework = require("@dxos/app-framework");
|
|
41
41
|
var import_plugin_transcription = require("@dxos/plugin-transcription");
|
|
@@ -117,15 +117,15 @@ var DialogHeader = ({ open, title, onToggle }) => {
|
|
|
117
117
|
})));
|
|
118
118
|
};
|
|
119
119
|
var AssistantDialog = ({ chat }) => {
|
|
120
|
-
const { t } = (0, import_react_ui.useTranslation)(
|
|
121
|
-
const transcription = (0, import_app_framework.useCapabilities)(import_plugin_transcription.TranscriptionCapabilities.
|
|
122
|
-
const settings = (0, import_app_framework.useCapability)(import_app_framework.Capabilities.SettingsStore).getStore(
|
|
120
|
+
const { t } = (0, import_react_ui.useTranslation)(import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN);
|
|
121
|
+
const transcription = (0, import_app_framework.useCapabilities)(import_plugin_transcription.TranscriptionCapabilities.Transcriber).length > 0;
|
|
122
|
+
const settings = (0, import_app_framework.useCapability)(import_app_framework.Capabilities.SettingsStore).getStore(import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN)?.value;
|
|
123
123
|
const [open, setOpen] = (0, import_react.useState)(false);
|
|
124
124
|
return /* @__PURE__ */ import_react.default.createElement(AmbientDialog, {
|
|
125
125
|
open,
|
|
126
126
|
onOpenChange: setOpen,
|
|
127
127
|
title: t("assistant dialog title")
|
|
128
|
-
}, /* @__PURE__ */ import_react.default.createElement(
|
|
128
|
+
}, /* @__PURE__ */ import_react.default.createElement(import_chunk_RPBKMP2E.ThreadContainer, {
|
|
129
129
|
chat,
|
|
130
130
|
onOpenChange: setOpen,
|
|
131
131
|
settings,
|
|
@@ -138,4 +138,4 @@ var AssistantDialog_default = AssistantDialog;
|
|
|
138
138
|
0 && (module.exports = {
|
|
139
139
|
AssistantDialog
|
|
140
140
|
});
|
|
141
|
-
//# sourceMappingURL=AssistantDialog-
|
|
141
|
+
//# sourceMappingURL=AssistantDialog-YI2BSGSX.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/components/AssistantDialog.tsx", "../../../src/components/AmbientDialog/AmbientDialog.tsx"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { type FC, useState } from 'react';\n\nimport { useCapability, Capabilities, useCapabilities } from '@dxos/app-framework';\nimport { TranscriptionCapabilities } from '@dxos/plugin-transcription';\nimport { useTranslation } from '@dxos/react-ui';\n\nimport { AmbientDialog } from './AmbientDialog';\nimport { ThreadContainer } from './Thread';\nimport { ASSISTANT_PLUGIN } from '../meta';\nimport { type AssistantSettingsProps, type AIChatType } from '../types';\n\nexport const AssistantDialog: FC<{ chat?: AIChatType }> = ({ chat }) => {\n const { t } = useTranslation(ASSISTANT_PLUGIN);\n const transcription = useCapabilities(TranscriptionCapabilities.Transcriber).length > 0;\n const settings = useCapability(Capabilities.SettingsStore).getStore<AssistantSettingsProps>(ASSISTANT_PLUGIN)?.value;\n\n // TODO(burdon): Refocus when open.\n const [open, setOpen] = useState(false);\n\n return (\n <AmbientDialog open={open} onOpenChange={setOpen} title={t('assistant dialog title')}>\n <ThreadContainer\n chat={chat}\n onOpenChange={setOpen}\n settings={settings}\n part={'dialog'}\n transcription={transcription}\n />\n </AmbientDialog>\n );\n};\n\nexport default AssistantDialog;\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { type PropsWithChildren, useCallback, useEffect, useState } from 'react';\n\nimport { Dialog, Icon, IconButton } from '@dxos/react-ui';\nimport { resizeAttributes, ResizeHandle, type Size, sizeStyle } from '@dxos/react-ui-dnd';\nimport { mx } from '@dxos/react-ui-theme';\n\nconst preventDefault = (event: Event) => event.preventDefault();\n\nconst minSize = 5;\n\nexport type AmbientDialogProps = PropsWithChildren<{\n open?: boolean;\n title?: string;\n onOpenChange?: (open: boolean) => void;\n}>;\n\nexport const AmbientDialog = ({ children, open: controlledOpen, title, onOpenChange }: AmbientDialogProps) => {\n const [resizeKey, setReizeKey] = useState(0);\n const [size, setSize] = useState<Size>('min-content');\n const [open, setOpen] = useState(controlledOpen);\n\n // Update controlled value.\n useEffect(() => {\n setOpen(controlledOpen);\n }, [controlledOpen]);\n\n // Update size and key.\n useEffect(() => {\n setSize(open ? 'min-content' : minSize);\n setReizeKey((key) => key + 1);\n }, [open]);\n\n // TODO(burdon): Animate open/close.\n // NOTE: We set the min size to 5rem (80px), and the header and prompt bar to 40px (i.e., the rail-size) each.\n // The dialog has no vertical padding and has box-content so that when closed it collapses to the size of the header and prompt bar.\n const handleToggle = useCallback(() => {\n setOpen((open) => {\n onOpenChange?.(!open);\n return !open;\n });\n }, []);\n\n return (\n <div role='none' className='dx-dialog__overlay bg-transparent pointer-events-none' data-block-align='end'>\n <Dialog.Content\n classNames='relative box-content py-0 px-2 md:is-[35rem] md:max-is-none overflow-hidden pointer-events-auto transition-[block-size] ease-in-out duration-0 [&:not([data-dx-resizing=\"true\"])]:duration-200'\n inOverlayLayout\n {...resizeAttributes}\n style={{\n ...sizeStyle(size, 'vertical', true),\n maxBlockSize: 'calc(100dvh - env(safe-area-inset-bottom) - env(safe-area-inset-top) - 9rem)',\n }}\n onInteractOutside={preventDefault}\n >\n <ResizeHandle\n key={resizeKey}\n side='block-start'\n defaultSize='min-content'\n minSize={minSize}\n fallbackSize={minSize}\n iconPosition='center'\n onSizeChange={setSize}\n />\n\n <DialogHeader open={open} title={title} onToggle={handleToggle} />\n\n {children}\n </Dialog.Content>\n </div>\n );\n};\n\n/**\n * Matches same layout grid as PromptBar.\n */\nconst DialogHeader = ({ open, title, onToggle }: { open?: boolean; title?: string; onToggle: () => void }) => {\n return (\n <div className='flex shrink-0 w-full grid grid-cols-[var(--rail-action)_1fr_var(--rail-action)] items-center overflow-hidden'>\n <div className='flex w-[--rail-action] h-[--rail-action] items-center justify-center'>\n <Dialog.Close>\n <Icon icon='ph--x--regular' />\n </Dialog.Close>\n </div>\n <div className='grow'>\n <Dialog.Title classNames='flex justify-center text-xs text-subdued'>{title}</Dialog.Title>\n </div>\n <div className='flex w-[--rail-action] h-[--rail-action] items-center justify-center'>\n <IconButton\n variant='ghost'\n icon={'ph--caret-up--regular'}\n classNames={mx('[&>svg]:transition [&>svg]:duration-200', open && '[&>svg]:rotate-180')}\n iconOnly\n label='Shrink'\n onClick={onToggle}\n />\n </div>\n </div>\n );\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_react", "import_react_ui", "preventDefault", "event", "minSize", "AmbientDialog", "children", "open", "controlledOpen", "title", "onOpenChange", "resizeKey", "setReizeKey", "useState", "size", "setSize", "setOpen", "useEffect", "key", "handleToggle", "useCallback", "React", "div", "role", "className", "data-block-align", "Dialog", "Content", "classNames", "inOverlayLayout", "resizeAttributes", "style", "sizeStyle", "maxBlockSize", "onInteractOutside", "ResizeHandle", "side", "defaultSize", "fallbackSize", "iconPosition", "onSizeChange", "DialogHeader", "onToggle", "Close", "Icon", "icon", "Title", "IconButton", "variant", "mx", "iconOnly", "label", "onClick", "AssistantDialog", "chat", "t", "useTranslation", "ASSISTANT_PLUGIN", "transcription", "useCapabilities", "TranscriptionCapabilities", "Transcriber", "length", "settings", "useCapability", "Capabilities", "SettingsStore", "getStore", "value", "ThreadContainer", "part"]
|
|
7
|
+
}
|
|
@@ -26,31 +26,31 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
mod
|
|
27
27
|
));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var ChatContainer_ZJ5JXF6A_exports = {};
|
|
30
|
+
__export(ChatContainer_ZJ5JXF6A_exports, {
|
|
31
31
|
ChatContainer: () => ChatContainer,
|
|
32
32
|
default: () => ChatContainer_default
|
|
33
33
|
});
|
|
34
|
-
module.exports = __toCommonJS(
|
|
35
|
-
var
|
|
36
|
-
var
|
|
37
|
-
var
|
|
38
|
-
var
|
|
34
|
+
module.exports = __toCommonJS(ChatContainer_ZJ5JXF6A_exports);
|
|
35
|
+
var import_chunk_RPBKMP2E = require("./chunk-RPBKMP2E.cjs");
|
|
36
|
+
var import_chunk_GBUNQ257 = require("./chunk-GBUNQ257.cjs");
|
|
37
|
+
var import_chunk_APRU3QWK = require("./chunk-APRU3QWK.cjs");
|
|
38
|
+
var import_chunk_Q5XWEMHB = require("./chunk-Q5XWEMHB.cjs");
|
|
39
39
|
var import_react = __toESM(require("react"));
|
|
40
40
|
var import_app_framework = require("@dxos/app-framework");
|
|
41
41
|
var import_plugin_transcription = require("@dxos/plugin-transcription");
|
|
42
42
|
var import_react_ui_stack = require("@dxos/react-ui-stack");
|
|
43
|
-
var ChatContainer = ({ chat,
|
|
44
|
-
const transcription = (0, import_app_framework.useCapabilities)(import_plugin_transcription.TranscriptionCapabilities.
|
|
45
|
-
const settings = (0, import_app_framework.useCapability)(import_app_framework.Capabilities.SettingsStore).getStore(
|
|
43
|
+
var ChatContainer = ({ role, chat, associatedArtifact }) => {
|
|
44
|
+
const transcription = (0, import_app_framework.useCapabilities)(import_plugin_transcription.TranscriptionCapabilities.Transcriber).length > 0;
|
|
45
|
+
const settings = (0, import_app_framework.useCapability)(import_app_framework.Capabilities.SettingsStore).getStore(import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN)?.value;
|
|
46
46
|
return /* @__PURE__ */ import_react.default.createElement(import_react_ui_stack.StackItem.Content, {
|
|
47
|
-
toolbar: false,
|
|
48
47
|
role,
|
|
49
|
-
classNames: "
|
|
50
|
-
}, /* @__PURE__ */ import_react.default.createElement(
|
|
48
|
+
classNames: "container-max-width"
|
|
49
|
+
}, /* @__PURE__ */ import_react.default.createElement(import_chunk_RPBKMP2E.ThreadContainer, {
|
|
51
50
|
chat,
|
|
52
51
|
settings,
|
|
53
|
-
transcription
|
|
52
|
+
transcription,
|
|
53
|
+
associatedArtifact
|
|
54
54
|
}));
|
|
55
55
|
};
|
|
56
56
|
var ChatContainer_default = ChatContainer;
|
|
@@ -58,4 +58,4 @@ var ChatContainer_default = ChatContainer;
|
|
|
58
58
|
0 && (module.exports = {
|
|
59
59
|
ChatContainer
|
|
60
60
|
});
|
|
61
|
-
//# sourceMappingURL=ChatContainer-
|
|
61
|
+
//# sourceMappingURL=ChatContainer-ZJ5JXF6A.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/components/ChatContainer.tsx"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { Capabilities, useCapabilities, useCapability } from '@dxos/app-framework';\nimport { type AssociatedArtifact } from '@dxos/artifact';\nimport { TranscriptionCapabilities } from '@dxos/plugin-transcription';\nimport { StackItem } from '@dxos/react-ui-stack';\n\nimport { ThreadContainer } from './Thread';\nimport { ASSISTANT_PLUGIN } from '../meta';\nimport { type AssistantSettingsProps, type AIChatType } from '../types';\n\n// TODO(burdon): Attention.\nexport const ChatContainer = ({\n role,\n chat,\n associatedArtifact,\n}: {\n role: string;\n chat: AIChatType;\n associatedArtifact?: AssociatedArtifact;\n}) => {\n const transcription = useCapabilities(TranscriptionCapabilities.Transcriber).length > 0;\n const settings = useCapability(Capabilities.SettingsStore).getStore<AssistantSettingsProps>(ASSISTANT_PLUGIN)?.value;\n\n return (\n <StackItem.Content role={role} classNames='container-max-width'>\n <ThreadContainer\n chat={chat}\n settings={settings}\n transcription={transcription}\n associatedArtifact={associatedArtifact}\n />\n </StackItem.Content>\n );\n};\n\nexport default ChatContainer;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,mBAAkB;AAElB,2BAA6D;AAE7D,kCAA0C;AAC1C,4BAA0B;AAOnB,IAAMA,gBAAgB,CAAC,EAC5BC,MACAC,MACAC,mBAAkB,MAKnB;AACC,QAAMC,oBAAgBC,sCAAgBC,sDAA0BC,WAAW,EAAEC,SAAS;AACtF,QAAMC,eAAWC,oCAAcC,kCAAaC,aAAa,EAAEC,SAAiCC,sCAAAA,GAAmBC;AAE/G,SACE,6BAAAC,QAAA,cAACC,gCAAUC,SAAO;IAACjB;IAAYkB,YAAW;KACxC,6BAAAH,QAAA,cAACI,uCAAAA;IACClB;IACAO;IACAL;IACAD;;AAIR;AAEA,IAAA,wBAAeH;",
|
|
6
|
+
"names": ["ChatContainer", "role", "chat", "associatedArtifact", "transcription", "useCapabilities", "TranscriptionCapabilities", "Transcriber", "length", "settings", "useCapability", "Capabilities", "SettingsStore", "getStore", "ASSISTANT_PLUGIN", "value", "React", "StackItem", "Content", "classNames", "ThreadContainer"]
|
|
7
|
+
}
|
|
@@ -26,22 +26,22 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
mod
|
|
27
27
|
));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var TemplateContainer_XWFYJB4T_exports = {};
|
|
30
|
+
__export(TemplateContainer_XWFYJB4T_exports, {
|
|
31
31
|
TemplateContainer: () => TemplateContainer,
|
|
32
32
|
default: () => TemplateContainer_default
|
|
33
33
|
});
|
|
34
|
-
module.exports = __toCommonJS(
|
|
35
|
-
var
|
|
36
|
-
var
|
|
37
|
-
var
|
|
34
|
+
module.exports = __toCommonJS(TemplateContainer_XWFYJB4T_exports);
|
|
35
|
+
var import_chunk_XI2ARIEO = require("./chunk-XI2ARIEO.cjs");
|
|
36
|
+
var import_chunk_APRU3QWK = require("./chunk-APRU3QWK.cjs");
|
|
37
|
+
var import_chunk_Q5XWEMHB = require("./chunk-Q5XWEMHB.cjs");
|
|
38
38
|
var import_effect = require("effect");
|
|
39
39
|
var import_react = __toESM(require("react"));
|
|
40
40
|
var import_async = require("@dxos/async");
|
|
41
41
|
var import_react_ui = require("@dxos/react-ui");
|
|
42
42
|
var import_react_ui_stack = require("@dxos/react-ui-stack");
|
|
43
43
|
var TemplateContainer = ({ template, role }) => {
|
|
44
|
-
const { t } = (0, import_react_ui.useTranslation)(
|
|
44
|
+
const { t } = (0, import_react_ui.useTranslation)(import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN);
|
|
45
45
|
const handleKindChange = (0, import_react.useCallback)((value) => {
|
|
46
46
|
const kind = import_effect.Match.type().pipe(import_effect.Match.withReturnType(), import_effect.Match.when("always", () => ({
|
|
47
47
|
include: "always"
|
|
@@ -73,15 +73,15 @@ var TemplateContainer = ({ template, role }) => {
|
|
|
73
73
|
template.kind.include
|
|
74
74
|
]);
|
|
75
75
|
return /* @__PURE__ */ import_react.default.createElement(import_react_ui_stack.StackItem.Content, {
|
|
76
|
-
toolbar: true,
|
|
77
76
|
role,
|
|
78
|
-
|
|
77
|
+
toolbar: true,
|
|
78
|
+
classNames: "container-max-width"
|
|
79
79
|
}, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Toolbar.Root, null, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Select.Root, {
|
|
80
80
|
value: template.kind.include,
|
|
81
81
|
onValueChange: handleKindChange
|
|
82
82
|
}, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Toolbar.Button, {
|
|
83
83
|
asChild: true
|
|
84
|
-
}, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Select.TriggerButton, null)), /* @__PURE__ */ import_react.default.createElement(import_react_ui.Select.Portal, null, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Select.Content, null, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Select.Viewport, null,
|
|
84
|
+
}, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Select.TriggerButton, null)), /* @__PURE__ */ import_react.default.createElement(import_react_ui.Select.Portal, null, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Select.Content, null, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Select.Viewport, null, import_chunk_APRU3QWK.TemplateKinds.map((kind) => /* @__PURE__ */ import_react.default.createElement(import_react_ui.Select.Option, {
|
|
85
85
|
key: kind,
|
|
86
86
|
value: kind
|
|
87
87
|
}, kind)))))), template.kind.include === "schema-matching" && /* @__PURE__ */ import_react.default.createElement(import_react_ui.Input.Root, null, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Input.TextInput, {
|
|
@@ -92,7 +92,7 @@ var TemplateContainer = ({ template, role }) => {
|
|
|
92
92
|
placeholder: t("description placeholder"),
|
|
93
93
|
defaultValue: template.kind.description,
|
|
94
94
|
onChange: handleDescriptionChange
|
|
95
|
-
}))), /* @__PURE__ */ import_react.default.createElement(
|
|
95
|
+
}))), /* @__PURE__ */ import_react.default.createElement(import_chunk_XI2ARIEO.TemplateEditor, {
|
|
96
96
|
template
|
|
97
97
|
}));
|
|
98
98
|
};
|
|
@@ -101,4 +101,4 @@ var TemplateContainer_default = TemplateContainer;
|
|
|
101
101
|
0 && (module.exports = {
|
|
102
102
|
TemplateContainer
|
|
103
103
|
});
|
|
104
|
-
//# sourceMappingURL=TemplateContainer-
|
|
104
|
+
//# sourceMappingURL=TemplateContainer-XWFYJB4T.cjs.map
|
package/dist/lib/node/{TemplateContainer-VPAZRFQA.cjs.map → TemplateContainer-XWFYJB4T.cjs.map}
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/TemplateContainer.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Match, type Schema as S } from 'effect';\nimport React, { type ChangeEvent, useCallback } from 'react';\n\nimport { debounce } from '@dxos/async';\nimport { Input, Select, Toolbar, useTranslation } from '@dxos/react-ui';\nimport { StackItem } from '@dxos/react-ui-stack';\n\nimport { TemplateEditor } from './TemplateEditor';\nimport { ASSISTANT_PLUGIN } from '../meta';\nimport { TemplateKinds, type TemplateKindSchema, type TemplateType } from '../types';\n\nexport const TemplateContainer = ({ template, role }: { template: TemplateType; role: string }) => {\n const { t } = useTranslation(ASSISTANT_PLUGIN);\n\n const handleKindChange = useCallback(\n (value: string) => {\n const kind = Match.type<string>().pipe(\n Match.withReturnType<S.Schema.Type<typeof TemplateKindSchema>>(),\n Match.when('always', () => ({ include: 'always' })),\n Match.when('schema-matching', () => ({ include: 'schema-matching', typename: '' })),\n Match.when('automatically', () => ({ include: 'automatically', description: '' })),\n Match.orElse(() => ({ include: 'manual' })),\n )(value);\n\n template.kind = kind;\n },\n [template],\n );\n\n const handleTypenameChange = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n if (template.kind.include === 'schema-matching') {\n template.kind.typename = event.target.value;\n }\n }, 300),\n [template.kind.include],\n );\n\n const handleDescriptionChange = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n if (template.kind.include === 'automatically') {\n template.kind.description = event.target.value;\n }\n }, 300),\n [template.kind.include],\n );\n\n return (\n <StackItem.Content
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,oBAAwC;AACxC,mBAAqD;AAErD,mBAAyB;AACzB,sBAAuD;AACvD,4BAA0B;AAMnB,IAAMA,oBAAoB,CAAC,EAAEC,UAAUC,KAAI,MAA4C;AAC5F,QAAM,EAAEC,EAAC,QAAKC,gCAAeC,sCAAAA;AAE7B,QAAMC,uBAAmBC,0BACvB,CAACC,UAAAA;AACC,UAAMC,OAAOC,oBAAMC,KAAI,EAAWC,KAChCF,oBAAMG,eAAc,GACpBH,oBAAMI,KAAK,UAAU,OAAO;MAAEC,SAAS;IAAS,EAAA,GAChDL,oBAAMI,KAAK,mBAAmB,OAAO;MAAEC,SAAS;MAAmBC,UAAU;IAAG,EAAA,GAChFN,oBAAMI,KAAK,iBAAiB,OAAO;MAAEC,SAAS;MAAiBE,aAAa;IAAG,EAAA,GAC/EP,oBAAMQ,OAAO,OAAO;MAAEH,SAAS;IAAS,EAAA,CAAA,EACxCP,KAAAA;AAEFP,aAASQ,OAAOA;EAClB,GACA;IAACR;GAAS;AAGZ,QAAMkB,2BAAuBZ,8BAC3Ba,uBAAS,CAACC,UAAAA;AACR,QAAIpB,SAASQ,KAAKM,YAAY,mBAAmB;AAC/Cd,eAASQ,KAAKO,WAAWK,MAAMC,OAAOd;IACxC;EACF,GAAG,GAAA,GACH;IAACP,SAASQ,KAAKM;GAAQ;AAGzB,QAAMQ,8BAA0BhB,8BAC9Ba,uBAAS,CAACC,UAAAA;AACR,QAAIpB,SAASQ,KAAKM,YAAY,iBAAiB;AAC7Cd,eAASQ,KAAKQ,cAAcI,MAAMC,OAAOd;IAC3C;EACF,GAAG,GAAA,GACH;IAACP,SAASQ,KAAKM;GAAQ;AAGzB,SACE,6BAAAS,QAAA,cAACC,gCAAUC,SAAO;
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Match, type Schema as S } from 'effect';\nimport React, { type ChangeEvent, useCallback } from 'react';\n\nimport { debounce } from '@dxos/async';\nimport { Input, Select, Toolbar, useTranslation } from '@dxos/react-ui';\nimport { StackItem } from '@dxos/react-ui-stack';\n\nimport { TemplateEditor } from './TemplateEditor';\nimport { ASSISTANT_PLUGIN } from '../meta';\nimport { TemplateKinds, type TemplateKindSchema, type TemplateType } from '../types';\n\nexport const TemplateContainer = ({ template, role }: { template: TemplateType; role: string }) => {\n const { t } = useTranslation(ASSISTANT_PLUGIN);\n\n const handleKindChange = useCallback(\n (value: string) => {\n const kind = Match.type<string>().pipe(\n Match.withReturnType<S.Schema.Type<typeof TemplateKindSchema>>(),\n Match.when('always', () => ({ include: 'always' })),\n Match.when('schema-matching', () => ({ include: 'schema-matching', typename: '' })),\n Match.when('automatically', () => ({ include: 'automatically', description: '' })),\n Match.orElse(() => ({ include: 'manual' })),\n )(value);\n\n template.kind = kind;\n },\n [template],\n );\n\n const handleTypenameChange = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n if (template.kind.include === 'schema-matching') {\n template.kind.typename = event.target.value;\n }\n }, 300),\n [template.kind.include],\n );\n\n const handleDescriptionChange = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n if (template.kind.include === 'automatically') {\n template.kind.description = event.target.value;\n }\n }, 300),\n [template.kind.include],\n );\n\n return (\n <StackItem.Content role={role} toolbar classNames='container-max-width'>\n {/* TODO(wittjosiah): Move this toolbar into c11y sidebar. */}\n <Toolbar.Root>\n <Select.Root value={template.kind.include} onValueChange={handleKindChange}>\n <Toolbar.Button asChild>\n <Select.TriggerButton />\n </Toolbar.Button>\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n {TemplateKinds.map((kind) => (\n <Select.Option key={kind} value={kind}>\n {kind}\n </Select.Option>\n ))}\n </Select.Viewport>\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n {template.kind.include === 'schema-matching' && (\n <Input.Root>\n <Input.TextInput\n placeholder={t('typename placeholder')}\n defaultValue={template.kind.typename}\n onChange={handleTypenameChange}\n />\n </Input.Root>\n )}\n {template.kind.include === 'automatically' && (\n <Input.Root>\n <Input.TextInput\n placeholder={t('description placeholder')}\n defaultValue={template.kind.description}\n onChange={handleDescriptionChange}\n />\n </Input.Root>\n )}\n </Toolbar.Root>\n <TemplateEditor template={template} />\n </StackItem.Content>\n );\n};\n\nexport default TemplateContainer;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,oBAAwC;AACxC,mBAAqD;AAErD,mBAAyB;AACzB,sBAAuD;AACvD,4BAA0B;AAMnB,IAAMA,oBAAoB,CAAC,EAAEC,UAAUC,KAAI,MAA4C;AAC5F,QAAM,EAAEC,EAAC,QAAKC,gCAAeC,sCAAAA;AAE7B,QAAMC,uBAAmBC,0BACvB,CAACC,UAAAA;AACC,UAAMC,OAAOC,oBAAMC,KAAI,EAAWC,KAChCF,oBAAMG,eAAc,GACpBH,oBAAMI,KAAK,UAAU,OAAO;MAAEC,SAAS;IAAS,EAAA,GAChDL,oBAAMI,KAAK,mBAAmB,OAAO;MAAEC,SAAS;MAAmBC,UAAU;IAAG,EAAA,GAChFN,oBAAMI,KAAK,iBAAiB,OAAO;MAAEC,SAAS;MAAiBE,aAAa;IAAG,EAAA,GAC/EP,oBAAMQ,OAAO,OAAO;MAAEH,SAAS;IAAS,EAAA,CAAA,EACxCP,KAAAA;AAEFP,aAASQ,OAAOA;EAClB,GACA;IAACR;GAAS;AAGZ,QAAMkB,2BAAuBZ,8BAC3Ba,uBAAS,CAACC,UAAAA;AACR,QAAIpB,SAASQ,KAAKM,YAAY,mBAAmB;AAC/Cd,eAASQ,KAAKO,WAAWK,MAAMC,OAAOd;IACxC;EACF,GAAG,GAAA,GACH;IAACP,SAASQ,KAAKM;GAAQ;AAGzB,QAAMQ,8BAA0BhB,8BAC9Ba,uBAAS,CAACC,UAAAA;AACR,QAAIpB,SAASQ,KAAKM,YAAY,iBAAiB;AAC7Cd,eAASQ,KAAKQ,cAAcI,MAAMC,OAAOd;IAC3C;EACF,GAAG,GAAA,GACH;IAACP,SAASQ,KAAKM;GAAQ;AAGzB,SACE,6BAAAS,QAAA,cAACC,gCAAUC,SAAO;IAACxB;IAAYyB,SAAAA;IAAQC,YAAW;KAEhD,6BAAAJ,QAAA,cAACK,wBAAQC,MAAI,MACX,6BAAAN,QAAA,cAACO,uBAAOD,MAAI;IAACtB,OAAOP,SAASQ,KAAKM;IAASiB,eAAe1B;KACxD,6BAAAkB,QAAA,cAACK,wBAAQI,QAAM;IAACC,SAAAA;KACd,6BAAAV,QAAA,cAACO,uBAAOI,eAAa,IAAA,CAAA,GAEvB,6BAAAX,QAAA,cAACO,uBAAOK,QAAM,MACZ,6BAAAZ,QAAA,cAACO,uBAAOL,SAAO,MACb,6BAAAF,QAAA,cAACO,uBAAOM,UAAQ,MACbC,oCAAcC,IAAI,CAAC9B,SAClB,6BAAAe,QAAA,cAACO,uBAAOS,QAAM;IAACC,KAAKhC;IAAMD,OAAOC;KAC9BA,IAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAOZR,SAASQ,KAAKM,YAAY,qBACzB,6BAAAS,QAAA,cAACkB,sBAAMZ,MAAI,MACT,6BAAAN,QAAA,cAACkB,sBAAMC,WAAS;IACdC,aAAazC,EAAE,sBAAA;IACf0C,cAAc5C,SAASQ,KAAKO;IAC5B8B,UAAU3B;OAIflB,SAASQ,KAAKM,YAAY,mBACzB,6BAAAS,QAAA,cAACkB,sBAAMZ,MAAI,MACT,6BAAAN,QAAA,cAACkB,sBAAMC,WAAS;IACdC,aAAazC,EAAE,yBAAA;IACf0C,cAAc5C,SAASQ,KAAKQ;IAC5B6B,UAAUvB;QAKlB,6BAAAC,QAAA,cAACuB,sCAAAA;IAAe9C;;AAGtB;AAEA,IAAA,4BAAeD;",
|
|
6
6
|
"names": ["TemplateContainer", "template", "role", "t", "useTranslation", "ASSISTANT_PLUGIN", "handleKindChange", "useCallback", "value", "kind", "Match", "type", "pipe", "withReturnType", "when", "include", "typename", "description", "orElse", "handleTypenameChange", "debounce", "event", "target", "handleDescriptionChange", "React", "StackItem", "Content", "toolbar", "classNames", "Toolbar", "Root", "Select", "onValueChange", "Button", "asChild", "TriggerButton", "Portal", "Viewport", "TemplateKinds", "map", "Option", "key", "Input", "TextInput", "placeholder", "defaultValue", "onChange", "TemplateEditor"]
|
|
7
7
|
}
|
|
@@ -16,13 +16,13 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
19
|
+
var ai_client_URCCYU6B_exports = {};
|
|
20
|
+
__export(ai_client_URCCYU6B_exports, {
|
|
21
21
|
default: () => ai_client_default
|
|
22
22
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
24
|
-
var
|
|
25
|
-
var
|
|
23
|
+
module.exports = __toCommonJS(ai_client_URCCYU6B_exports);
|
|
24
|
+
var import_chunk_GBUNQ257 = require("./chunk-GBUNQ257.cjs");
|
|
25
|
+
var import_chunk_Q5XWEMHB = require("./chunk-Q5XWEMHB.cjs");
|
|
26
26
|
var import_signals_core = require("@preact/signals-core");
|
|
27
27
|
var import_app_framework = require("@dxos/app-framework");
|
|
28
28
|
var import_assistant = require("@dxos/assistant");
|
|
@@ -35,7 +35,7 @@ var ai_client_default = (context) => {
|
|
|
35
35
|
endpoint
|
|
36
36
|
}));
|
|
37
37
|
const unsubscribe = (0, import_signals_core.effect)(() => {
|
|
38
|
-
const settings = context.requestCapability(import_app_framework.Capabilities.SettingsStore).getStore(
|
|
38
|
+
const settings = context.requestCapability(import_app_framework.Capabilities.SettingsStore).getStore(import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN)?.value;
|
|
39
39
|
if (settings?.llmProvider === "ollama") {
|
|
40
40
|
ai.value = new import_assistant.OllamaClient();
|
|
41
41
|
} else {
|
|
@@ -44,6 +44,6 @@ var ai_client_default = (context) => {
|
|
|
44
44
|
});
|
|
45
45
|
}
|
|
46
46
|
});
|
|
47
|
-
return (0, import_app_framework.contributes)(
|
|
47
|
+
return (0, import_app_framework.contributes)(import_chunk_GBUNQ257.AssistantCapabilities.AiClient, ai, () => unsubscribe());
|
|
48
48
|
};
|
|
49
|
-
//# sourceMappingURL=ai-client-
|
|
49
|
+
//# sourceMappingURL=ai-client-URCCYU6B.cjs.map
|
|
@@ -16,24 +16,25 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
19
|
+
var app_graph_builder_N5ZUUI2Z_exports = {};
|
|
20
|
+
__export(app_graph_builder_N5ZUUI2Z_exports, {
|
|
21
21
|
default: () => app_graph_builder_default
|
|
22
22
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
24
|
-
var
|
|
25
|
-
var
|
|
23
|
+
module.exports = __toCommonJS(app_graph_builder_N5ZUUI2Z_exports);
|
|
24
|
+
var import_chunk_APRU3QWK = require("./chunk-APRU3QWK.cjs");
|
|
25
|
+
var import_chunk_Q5XWEMHB = require("./chunk-Q5XWEMHB.cjs");
|
|
26
26
|
var import_app_framework = require("@dxos/app-framework");
|
|
27
27
|
var import_invariant = require("@dxos/invariant");
|
|
28
28
|
var import_plugin_client = require("@dxos/plugin-client");
|
|
29
|
+
var import_types = require("@dxos/plugin-deck/types");
|
|
29
30
|
var import_plugin_graph = require("@dxos/plugin-graph");
|
|
30
31
|
var import_plugin_space = require("@dxos/plugin-space");
|
|
31
|
-
var
|
|
32
|
+
var import_types2 = require("@dxos/plugin-space/types");
|
|
32
33
|
var import_echo = require("@dxos/react-client/echo");
|
|
33
|
-
var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/
|
|
34
|
+
var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-assistant/src/capabilities/app-graph-builder.ts";
|
|
34
35
|
var app_graph_builder_default = (context) => (0, import_app_framework.contributes)(import_app_framework.Capabilities.AppGraphBuilder, [
|
|
35
36
|
(0, import_plugin_graph.createExtension)({
|
|
36
|
-
id: `${
|
|
37
|
+
id: `${import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN}/assistant`,
|
|
37
38
|
filter: (node) => node.id === import_plugin_graph.ROOT_ID,
|
|
38
39
|
actions: () => [
|
|
39
40
|
{
|
|
@@ -61,7 +62,7 @@ var app_graph_builder_default = (context) => (0, import_app_framework.contribute
|
|
|
61
62
|
}
|
|
62
63
|
await dispatch((0, import_app_framework.createIntent)(import_app_framework.LayoutAction.UpdateDialog, {
|
|
63
64
|
part: "dialog",
|
|
64
|
-
subject:
|
|
65
|
+
subject: import_chunk_Q5XWEMHB.ASSISTANT_DIALOG,
|
|
65
66
|
options: {
|
|
66
67
|
state: true,
|
|
67
68
|
blockAlign: "end",
|
|
@@ -75,10 +76,10 @@ var app_graph_builder_default = (context) => (0, import_app_framework.contribute
|
|
|
75
76
|
label: [
|
|
76
77
|
"open assistant label",
|
|
77
78
|
{
|
|
78
|
-
ns:
|
|
79
|
+
ns: import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN
|
|
79
80
|
}
|
|
80
81
|
],
|
|
81
|
-
icon: "ph--
|
|
82
|
+
icon: "ph--star-four--regular",
|
|
82
83
|
disposition: "pin-end",
|
|
83
84
|
position: "hoist",
|
|
84
85
|
keyBinding: {
|
|
@@ -90,20 +91,74 @@ var app_graph_builder_default = (context) => (0, import_app_framework.contribute
|
|
|
90
91
|
]
|
|
91
92
|
}),
|
|
92
93
|
(0, import_plugin_graph.createExtension)({
|
|
93
|
-
id: `${
|
|
94
|
+
id: `${import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN}/service-registry`,
|
|
95
|
+
filter: (node) => node.id === "root",
|
|
96
|
+
connector: ({ node }) => {
|
|
97
|
+
const layout = context.requestCapability(import_app_framework.Capabilities.Layout);
|
|
98
|
+
const client = context.requestCapability(import_plugin_client.ClientCapabilities.Client);
|
|
99
|
+
const { spaceId } = (0, import_echo.parseId)(layout.workspace);
|
|
100
|
+
const space = spaceId ? client.spaces.get(spaceId) : null;
|
|
101
|
+
return [
|
|
102
|
+
{
|
|
103
|
+
id: [
|
|
104
|
+
node.id,
|
|
105
|
+
"service-registry"
|
|
106
|
+
].join(import_types.ATTENDABLE_PATH_SEPARATOR),
|
|
107
|
+
type: import_types.DECK_COMPANION_TYPE,
|
|
108
|
+
data: space,
|
|
109
|
+
properties: {
|
|
110
|
+
label: [
|
|
111
|
+
"service registry label",
|
|
112
|
+
{
|
|
113
|
+
ns: import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN
|
|
114
|
+
}
|
|
115
|
+
],
|
|
116
|
+
icon: "ph--plugs--regular",
|
|
117
|
+
disposition: "hidden"
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
];
|
|
121
|
+
}
|
|
122
|
+
}),
|
|
123
|
+
(0, import_plugin_graph.createExtension)({
|
|
124
|
+
id: `${import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN}/object-chat-companion`,
|
|
125
|
+
filter: (node) => (0, import_echo.isReactiveObject)(node.data) && node.data.assistantChatQueue && node.data.type !== import_chunk_APRU3QWK.AIChatType.typename,
|
|
126
|
+
connector: ({ node }) => [
|
|
127
|
+
{
|
|
128
|
+
id: [
|
|
129
|
+
node.id,
|
|
130
|
+
"assistant-chat"
|
|
131
|
+
].join(import_types.ATTENDABLE_PATH_SEPARATOR),
|
|
132
|
+
type: import_types.PLANK_COMPANION_TYPE,
|
|
133
|
+
data: "assistant-chat",
|
|
134
|
+
properties: {
|
|
135
|
+
label: [
|
|
136
|
+
"assistant chat label",
|
|
137
|
+
{
|
|
138
|
+
ns: import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN
|
|
139
|
+
}
|
|
140
|
+
],
|
|
141
|
+
icon: "ph--star-four--regular",
|
|
142
|
+
position: "hoist"
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
]
|
|
146
|
+
}),
|
|
147
|
+
(0, import_plugin_graph.createExtension)({
|
|
148
|
+
id: `${import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN}/root`,
|
|
94
149
|
filter: (node) => (0, import_echo.isSpace)(node.data),
|
|
95
150
|
connector: ({ node }) => {
|
|
96
|
-
const templates = (0, import_plugin_space.memoizeQuery)(node.data, import_echo.Filter.schema(
|
|
151
|
+
const templates = (0, import_plugin_space.memoizeQuery)(node.data, import_echo.Filter.schema(import_chunk_APRU3QWK.TemplateType));
|
|
97
152
|
return templates.length > 0 ? [
|
|
98
153
|
{
|
|
99
|
-
id: `${
|
|
100
|
-
type: `${
|
|
154
|
+
id: `${import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN}/templates`,
|
|
155
|
+
type: `${import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN}/templates`,
|
|
101
156
|
data: null,
|
|
102
157
|
properties: {
|
|
103
158
|
label: [
|
|
104
159
|
"templates label",
|
|
105
160
|
{
|
|
106
|
-
ns:
|
|
161
|
+
ns: import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN
|
|
107
162
|
}
|
|
108
163
|
],
|
|
109
164
|
icon: "ph--file-code--regular",
|
|
@@ -114,23 +169,23 @@ var app_graph_builder_default = (context) => (0, import_app_framework.contribute
|
|
|
114
169
|
}
|
|
115
170
|
}),
|
|
116
171
|
(0, import_plugin_graph.createExtension)({
|
|
117
|
-
id: `${
|
|
118
|
-
filter: (node) => node.id === `${
|
|
172
|
+
id: `${import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN}/templates`,
|
|
173
|
+
filter: (node) => node.id === `${import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN}/templates`,
|
|
119
174
|
connector: ({ node }) => {
|
|
120
|
-
const templates = (0, import_plugin_space.memoizeQuery)(node.properties.space, import_echo.Filter.schema(
|
|
175
|
+
const templates = (0, import_plugin_space.memoizeQuery)(node.properties.space, import_echo.Filter.schema(import_chunk_APRU3QWK.TemplateType));
|
|
121
176
|
return templates.toSorted((a, b) => {
|
|
122
177
|
const nameA = a.name ?? "";
|
|
123
178
|
const nameB = b.name ?? "";
|
|
124
179
|
return nameA.localeCompare(nameB);
|
|
125
180
|
}).map((template) => ({
|
|
126
181
|
id: (0, import_echo.fullyQualifiedId)(template),
|
|
127
|
-
type: `${
|
|
182
|
+
type: `${import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN}/template`,
|
|
128
183
|
data: template,
|
|
129
184
|
properties: {
|
|
130
185
|
label: template.name ?? [
|
|
131
186
|
"template title placeholder",
|
|
132
187
|
{
|
|
133
|
-
ns:
|
|
188
|
+
ns: import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN
|
|
134
189
|
}
|
|
135
190
|
],
|
|
136
191
|
icon: "ph--file-code--regular"
|
|
@@ -140,26 +195,26 @@ var app_graph_builder_default = (context) => (0, import_app_framework.contribute
|
|
|
140
195
|
})
|
|
141
196
|
]);
|
|
142
197
|
var getOrCreateChat = async (dispatch, space) => {
|
|
143
|
-
const { objects } = await space.db.query(import_echo.Filter.schema(
|
|
198
|
+
const { objects } = await space.db.query(import_echo.Filter.schema(import_chunk_APRU3QWK.AIChatType)).run();
|
|
144
199
|
if (objects.length > 0) {
|
|
145
200
|
return objects[objects.length - 1];
|
|
146
201
|
}
|
|
147
|
-
const { data } = await dispatch((0, import_app_framework.createIntent)(
|
|
202
|
+
const { data } = await dispatch((0, import_app_framework.createIntent)(import_chunk_APRU3QWK.AssistantAction.CreateChat, {
|
|
148
203
|
spaceId: space.id
|
|
149
204
|
}));
|
|
150
|
-
(0, import_invariant.invariant)(data?.object instanceof
|
|
205
|
+
(0, import_invariant.invariant)(data?.object instanceof import_chunk_APRU3QWK.AIChatType, void 0, {
|
|
151
206
|
F: __dxlog_file,
|
|
152
|
-
L:
|
|
207
|
+
L: 192,
|
|
153
208
|
S: void 0,
|
|
154
209
|
A: [
|
|
155
210
|
"data?.object instanceof AIChatType",
|
|
156
211
|
""
|
|
157
212
|
]
|
|
158
213
|
});
|
|
159
|
-
await dispatch((0, import_app_framework.createIntent)(
|
|
214
|
+
await dispatch((0, import_app_framework.createIntent)(import_types2.SpaceAction.AddObject, {
|
|
160
215
|
target: space,
|
|
161
216
|
object: data.object
|
|
162
217
|
}));
|
|
163
218
|
return data.object;
|
|
164
219
|
};
|
|
165
|
-
//# sourceMappingURL=app-graph-builder-
|
|
220
|
+
//# sourceMappingURL=app-graph-builder-N5ZUUI2Z.cjs.map
|
|
@@ -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 {\n Capabilities,\n contributes,\n createIntent,\n LayoutAction,\n type PromiseIntentDispatcher,\n type PluginsContext,\n} from '@dxos/app-framework';\nimport { invariant } from '@dxos/invariant';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { PLANK_COMPANION_TYPE, ATTENDABLE_PATH_SEPARATOR, DECK_COMPANION_TYPE } from '@dxos/plugin-deck/types';\nimport { createExtension, type Node, ROOT_ID } from '@dxos/plugin-graph';\nimport { memoizeQuery } from '@dxos/plugin-space';\nimport { SpaceAction } from '@dxos/plugin-space/types';\nimport {\n type Space,\n Filter,\n fullyQualifiedId,\n getSpace,\n isSpace,\n isReactiveObject,\n parseId,\n} from '@dxos/react-client/echo';\n\nimport { ASSISTANT_DIALOG, ASSISTANT_PLUGIN } from '../meta';\nimport { AIChatType, AssistantAction, TemplateType } from '../types';\n\nexport default (context: PluginsContext) =>\n contributes(Capabilities.AppGraphBuilder, [\n createExtension({\n id: `${ASSISTANT_PLUGIN}/assistant`,\n filter: (node): node is Node<null> => node.id === ROOT_ID,\n actions: () => [\n {\n id: `${LayoutAction.UpdateDialog._tag}/assistant/open`,\n data: async () => {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n const client = context.requestCapability(ClientCapabilities.Client);\n const layout = context.requestCapability(Capabilities.Layout);\n const { graph } = context.requestCapability(Capabilities.AppGraph);\n\n // TODO(burdon): Get space from workspace.\n // TODO(burdon): If need to create chat, then add to dispatch stack below.\n let chat: AIChatType | undefined;\n if (layout.active.length > 0) {\n const node = graph.findNode(layout.active[0]);\n if (node) {\n const space = getSpace(node.data);\n if (space) {\n chat = await getOrCreateChat(dispatch, space);\n }\n }\n } else {\n const space = client.spaces.default;\n chat = await getOrCreateChat(dispatch, space);\n }\n\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: ASSISTANT_PLUGIN }],\n icon: 'ph--star-four--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 }),\n\n createExtension({\n id: `${ASSISTANT_PLUGIN}/service-registry`,\n filter: (node): node is Node<null> => node.id === 'root',\n connector: ({ node }) => {\n const layout = context.requestCapability(Capabilities.Layout);\n const client = context.requestCapability(ClientCapabilities.Client);\n const { spaceId } = parseId(layout.workspace);\n const space = spaceId ? client.spaces.get(spaceId) : null;\n\n return [\n {\n id: [node.id, 'service-registry'].join(ATTENDABLE_PATH_SEPARATOR),\n type: DECK_COMPANION_TYPE,\n data: space,\n properties: {\n label: ['service registry label', { ns: ASSISTANT_PLUGIN }],\n icon: 'ph--plugs--regular',\n disposition: 'hidden',\n },\n },\n ];\n },\n }),\n\n createExtension({\n id: `${ASSISTANT_PLUGIN}/object-chat-companion`,\n filter: (node): node is Node<AIChatType> =>\n isReactiveObject(node.data) && node.data.assistantChatQueue && node.data.type !== AIChatType.typename,\n connector: ({ node }) => [\n {\n id: [node.id, 'assistant-chat'].join(ATTENDABLE_PATH_SEPARATOR),\n type: PLANK_COMPANION_TYPE,\n data: 'assistant-chat',\n properties: {\n label: ['assistant chat label', { ns: ASSISTANT_PLUGIN }],\n icon: 'ph--star-four--regular',\n position: 'hoist',\n },\n },\n ],\n }),\n\n createExtension({\n id: `${ASSISTANT_PLUGIN}/root`,\n filter: (node): node is Node<Space> => isSpace(node.data),\n connector: ({ node }) => {\n const templates = memoizeQuery(node.data, Filter.schema(TemplateType));\n return templates.length > 0\n ? [\n {\n id: `${ASSISTANT_PLUGIN}/templates`,\n type: `${ASSISTANT_PLUGIN}/templates`,\n data: null,\n properties: {\n label: ['templates label', { ns: ASSISTANT_PLUGIN }],\n icon: 'ph--file-code--regular',\n space: node.data,\n },\n },\n ]\n : [];\n },\n }),\n\n createExtension({\n id: `${ASSISTANT_PLUGIN}/templates`,\n filter: (node): node is Node<null, { space: Space }> => node.id === `${ASSISTANT_PLUGIN}/templates`,\n connector: ({ node }) => {\n const templates = memoizeQuery(node.properties.space, Filter.schema(TemplateType));\n return templates\n .toSorted((a, b) => {\n const nameA = a.name ?? '';\n const nameB = b.name ?? '';\n return nameA.localeCompare(nameB);\n })\n .map((template) => ({\n id: fullyQualifiedId(template),\n type: `${ASSISTANT_PLUGIN}/template`,\n data: template,\n properties: {\n label: template.name ?? ['template title placeholder', { ns: ASSISTANT_PLUGIN }],\n icon: 'ph--file-code--regular',\n },\n }));\n },\n }),\n ]);\n\n// TODO(burdon): Factor out.\nconst getOrCreateChat = async (dispatch: PromiseIntentDispatcher, space: Space): Promise<AIChatType | undefined> => {\n const { objects } = await space.db.query(Filter.schema(AIChatType)).run();\n // console.log('objects', JSON.stringify(objects, null, 2));\n if (objects.length > 0) {\n // TODO(burdon): Is this the most recent?\n return objects[objects.length - 1];\n }\n\n const { data } = await dispatch(createIntent(AssistantAction.CreateChat, { spaceId: space.id }));\n invariant(data?.object instanceof AIChatType);\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": ["import_types", "context", "contributes", "Capabilities", "AppGraphBuilder", "createExtension", "id", "ASSISTANT_PLUGIN", "filter", "node", "ROOT_ID", "actions", "LayoutAction", "UpdateDialog", "_tag", "data", "dispatchPromise", "dispatch", "requestCapability", "IntentDispatcher", "client", "ClientCapabilities", "Client", "layout", "Layout", "graph", "AppGraph", "chat", "active", "length", "findNode", "space", "getSpace", "getOrCreateChat", "spaces", "default", "createIntent", "part", "subject", "ASSISTANT_DIALOG", "options", "state", "blockAlign", "props", "properties", "label", "ns", "icon", "disposition", "position", "keyBinding", "macos", "windows", "connector", "spaceId", "parseId", "workspace", "get", "join", "ATTENDABLE_PATH_SEPARATOR", "type", "DECK_COMPANION_TYPE", "isReactiveObject", "assistantChatQueue", "AIChatType", "typename", "PLANK_COMPANION_TYPE", "isSpace", "templates", "memoizeQuery", "Filter", "schema", "TemplateType", "toSorted", "a", "b", "nameA", "name", "nameB", "localeCompare", "map", "template", "fullyQualifiedId", "objects", "db", "query", "run", "AssistantAction", "CreateChat", "invariant", "object", "SpaceAction", "AddObject", "target"]
|
|
7
|
+
}
|
|
@@ -16,8 +16,8 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
19
|
+
var chunk_APRU3QWK_exports = {};
|
|
20
|
+
__export(chunk_APRU3QWK_exports, {
|
|
21
21
|
AIChatType: () => AIChatType,
|
|
22
22
|
ApiAuthorization: () => ApiAuthorization,
|
|
23
23
|
AssistantAction: () => AssistantAction,
|
|
@@ -30,8 +30,8 @@ __export(chunk_KLSNCP34_exports, {
|
|
|
30
30
|
TemplateType: () => TemplateType,
|
|
31
31
|
categoryIcons: () => categoryIcons
|
|
32
32
|
});
|
|
33
|
-
module.exports = __toCommonJS(
|
|
34
|
-
var
|
|
33
|
+
module.exports = __toCommonJS(chunk_APRU3QWK_exports);
|
|
34
|
+
var import_chunk_Q5XWEMHB = require("./chunk-Q5XWEMHB.cjs");
|
|
35
35
|
var import_echo_schema = require("@dxos/echo-schema");
|
|
36
36
|
var import_conductor = require("@dxos/conductor");
|
|
37
37
|
var import_echo_schema2 = require("@dxos/echo-schema");
|
|
@@ -42,9 +42,8 @@ var AIChatType = class extends (0, import_echo_schema.TypedObject)({
|
|
|
42
42
|
typename: "dxos.org/type/AIChat",
|
|
43
43
|
version: "0.1.0"
|
|
44
44
|
})({
|
|
45
|
-
name: import_echo_schema.S.optional(import_echo_schema.S.String),
|
|
46
45
|
// TODO(wittjosiah): Should be a ref to a Queue.
|
|
47
|
-
|
|
46
|
+
assistantChatQueue: (0, import_echo_schema.Ref)(import_echo_schema.Expando)
|
|
48
47
|
}) {
|
|
49
48
|
};
|
|
50
49
|
var ApiAuthorizationKey = import_echo_schema2.S.Struct({
|
|
@@ -161,7 +160,7 @@ var TemplateType = class extends (0, import_echo_schema3.TypedObject)({
|
|
|
161
160
|
};
|
|
162
161
|
var AssistantAction;
|
|
163
162
|
(function(AssistantAction2) {
|
|
164
|
-
const ASSISTANT_ACTION = `${
|
|
163
|
+
const ASSISTANT_ACTION = `${import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN}/action`;
|
|
165
164
|
class CreateChat extends import_echo_schema4.S.TaggedClass()(`${ASSISTANT_ACTION}/create-chat`, {
|
|
166
165
|
input: import_echo_schema4.S.Struct({
|
|
167
166
|
spaceId: import_echo_schema4.S.optional(import_echo_schema4.S.String),
|
|
@@ -204,4 +203,4 @@ var AssistantSettingsSchema = import_echo_schema4.S.mutable(import_echo_schema4.
|
|
|
204
203
|
TemplateType,
|
|
205
204
|
categoryIcons
|
|
206
205
|
});
|
|
207
|
-
//# sourceMappingURL=chunk-
|
|
206
|
+
//# sourceMappingURL=chunk-APRU3QWK.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/types/chat.ts", "../../../src/types/service.ts", "../../../src/types/template.ts", "../../../src/types/types.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { Expando, Ref, TypedObject } from '@dxos/echo-schema';\n\nexport class AIChatType extends TypedObject({ typename: 'dxos.org/type/AIChat', version: '0.1.0' })({\n // TODO(wittjosiah): Should be a ref to a Queue.\n assistantChatQueue: Ref(Expando),\n}) {}\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { ComputeGraph } from '@dxos/conductor';\nimport { Ref, S, TypedObject, type Ref$ } from '@dxos/echo-schema';\nimport { FunctionType } from '@dxos/functions/types';\n\nconst ApiAuthorizationKey = S.Struct({\n type: S.Literal('api-key'),\n key: S.String,\n placement: S.Union(\n S.Struct({\n type: S.Literal('authorization-header'),\n }),\n S.Struct({\n type: S.Literal('query'),\n name: S.String,\n }),\n ),\n});\n\nconst ApiAuthorizationOauth = S.Struct({\n type: S.Literal('oauth'),\n clientId: S.String,\n clientSecret: S.String,\n tokenUrl: S.String,\n grantType: S.String,\n});\n\nexport const ApiAuthorization = S.Union(ApiAuthorizationKey, ApiAuthorizationOauth);\nexport type ApiAuthorization = S.Schema.Type<typeof ApiAuthorization>;\n\nconst ServiceInterfaceFunction = S.Struct({\n kind: S.Literal('function'),\n fn: Ref(FunctionType) as Ref$<FunctionType>,\n});\n\nconst ServiceInterfaceWorkflow = S.Struct({\n kind: S.Literal('workflow'),\n workflow: Ref(ComputeGraph) as Ref$<ComputeGraph>,\n});\n\nconst ServiceInterfaceApi = S.Struct({\n kind: S.Literal('api'),\n\n /**\n * URL to fetch the openapi schema.\n */\n schemaUrl: S.optional(S.String),\n\n /**\n * Inlined openapi schema.\n */\n schema: S.optional(S.Any),\n\n /**\n * Authorization configuration if required.\n */\n authorization: S.optional(ApiAuthorization),\n});\n\nconst ServiceInterface = S.Union(ServiceInterfaceFunction, ServiceInterfaceWorkflow, ServiceInterfaceApi);\nexport type ServiceInterface = S.Schema.Type<typeof ServiceInterface>;\n\nexport class ServiceType extends TypedObject({ typename: 'dxos.org/type/ServiceType', version: '0.1.0' })({\n serviceId: S.String,\n name: S.optional(S.String),\n description: S.optional(S.String),\n category: S.optional(S.String),\n enabled: S.optional(S.Boolean),\n\n /**\n * Entries exposed: functions, workflows, and APIs.\n */\n interfaces: S.optional(S.Array(ServiceInterface)),\n}) {}\n\n//\n// Service Registry\n//\n\nexport type ServiceQuery = {\n name?: string;\n category?: string;\n};\n\nexport interface BaseServiceRegistry {\n queryServices(query?: ServiceQuery): Promise<ServiceType[]>;\n}\n\nexport const categoryIcons: Record<string, string> = {\n finance: 'ph--bank--regular',\n health: 'ph--heart--regular',\n geolocation: 'ph--globe-simple--regular',\n education: 'ph--books--regular',\n entertainment: 'ph--music-notes--regular',\n shopping: 'ph--shopping-cart--regular',\n travel: 'ph--airplane-takeoff--regular',\n utilities: 'ph--lightning--regular',\n weather: 'ph--cloud-rain--regular',\n} as const;\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { S, TypedObject } from '@dxos/echo-schema';\n\n// TODO(burdon): Change to S.Literal (and discriminated union).\nexport enum TemplateInputType {\n VALUE = 0,\n PASS_THROUGH = 1,\n RETRIEVER = 2,\n FUNCTION = 3,\n QUERY = 4,\n RESOLVER = 5,\n CONTEXT = 6,\n SCHEMA = 7,\n}\n\nexport const TemplateInputSchema = S.mutable(\n S.Struct({\n name: S.String,\n type: S.optional(S.Enums(TemplateInputType)),\n value: S.optional(S.String),\n }),\n);\n\nexport type TemplateInput = S.Schema.Type<typeof TemplateInputSchema>;\n\nexport const TemplateKinds = ['always', 'schema-matching', 'automatically', 'manual'] as const;\nexport type TemplateKind = (typeof TemplateKinds)[number];\n\nexport const TemplateKindSchema = S.Union(\n S.Struct({\n include: S.Literal('always'),\n }),\n S.Struct({\n include: S.Literal('schema-matching'),\n typename: S.String,\n }),\n S.Struct({\n include: S.Literal('automatically'),\n description: S.String,\n }),\n S.Struct({\n include: S.Literal('manual'),\n }),\n);\n\nexport type TemplateKindType = S.Schema.Type<typeof TemplateKindSchema>;\nexport class TemplateType extends TypedObject({ typename: 'dxos.org/type/Template', version: '0.1.0' })({\n name: S.optional(S.String),\n kind: S.mutable(TemplateKindSchema),\n source: S.String,\n inputs: S.optional(S.mutable(S.Array(TemplateInputSchema))),\n command: S.optional(S.String),\n}) {}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { S } from '@dxos/echo-schema';\n\nimport { AIChatType } from './chat';\nimport { TemplateType } from './template';\nimport { ASSISTANT_PLUGIN } from '../meta';\n\nexport namespace AssistantAction {\n const ASSISTANT_ACTION = `${ASSISTANT_PLUGIN}/action`;\n\n export class CreateChat extends S.TaggedClass<CreateChat>()(`${ASSISTANT_ACTION}/create-chat`, {\n input: S.Struct({\n spaceId: S.optional(S.String),\n name: S.optional(S.String),\n }),\n output: S.Struct({\n object: AIChatType,\n }),\n }) {}\n\n export class CreateTemplate extends S.TaggedClass<CreateTemplate>()(`${ASSISTANT_ACTION}/create-template`, {\n input: S.Struct({\n name: S.optional(S.String),\n }),\n output: S.Struct({\n object: TemplateType,\n }),\n }) {}\n}\n\nexport const AssistantSettingsSchema = S.mutable(\n S.Struct({\n llmProvider: S.optional(S.Literal('edge', 'ollama')),\n edgeModel: S.optional(S.String),\n ollamaModel: S.optional(S.String),\n customPrompts: S.optional(S.Boolean),\n }),\n);\n\nexport type AssistantSettingsProps = S.Schema.Type<typeof AssistantSettingsSchema>;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_echo_schema", "AIChatType", "TypedObject", "typename", "version", "assistantChatQueue", "Ref", "Expando", "ApiAuthorizationKey", "S", "Struct", "type", "Literal", "key", "String", "placement", "Union", "name", "ApiAuthorizationOauth", "clientId", "clientSecret", "tokenUrl", "grantType", "ApiAuthorization", "ServiceInterfaceFunction", "kind", "fn", "FunctionType", "ServiceInterfaceWorkflow", "workflow", "ComputeGraph", "ServiceInterfaceApi", "schemaUrl", "optional", "schema", "Any", "authorization", "ServiceInterface", "ServiceType", "serviceId", "description", "category", "enabled", "Boolean", "interfaces", "Array", "categoryIcons", "finance", "health", "geolocation", "education", "entertainment", "shopping", "travel", "utilities", "weather", "TemplateInputType", "TemplateInputSchema", "mutable", "Enums", "value", "TemplateKinds", "TemplateKindSchema", "include", "TemplateType", "source", "inputs", "command", "AssistantAction", "ASSISTANT_ACTION", "ASSISTANT_PLUGIN", "CreateChat", "TaggedClass", "input", "spaceId", "output", "object", "CreateTemplate", "AssistantSettingsSchema", "llmProvider", "edgeModel", "ollamaModel", "customPrompts"]
|
|
7
|
+
}
|