@dxos/plugin-assistant 0.8.2-main.f11618f → 0.8.2-staging.7ac8446
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-I47GUXWR.mjs → AssistantDialog-YSHMAHW5.mjs} +3 -3
- package/dist/lib/browser/{ChatContainer-GAYN3FEF.mjs → ChatContainer-V5GP7DYF.mjs} +3 -3
- package/dist/lib/browser/ChatContainer-V5GP7DYF.mjs.map +7 -0
- package/dist/lib/browser/TemplateContainer-K4EJNGIL.mjs +78 -0
- package/dist/lib/browser/TemplateContainer-K4EJNGIL.mjs.map +7 -0
- package/dist/lib/browser/{ai-client-OK5SMYJC.mjs → ai-client-CDZLSNXE.mjs} +1 -1
- package/dist/lib/browser/{ai-client-OK5SMYJC.mjs.map → ai-client-CDZLSNXE.mjs.map} +2 -2
- package/dist/lib/browser/{app-graph-builder-ZXKGE3H5.mjs → app-graph-builder-MF5EVDWW.mjs} +39 -9
- package/dist/lib/browser/app-graph-builder-MF5EVDWW.mjs.map +7 -0
- package/dist/lib/browser/{chunk-7CAHKTZQ.mjs → chunk-FMB7RGMP.mjs} +56 -92
- package/dist/lib/browser/chunk-FMB7RGMP.mjs.map +7 -0
- package/dist/lib/browser/{chunk-E7BN4QKP.mjs → chunk-IAMR2FAE.mjs} +2 -9
- package/dist/lib/browser/{chunk-E7BN4QKP.mjs.map → chunk-IAMR2FAE.mjs.map} +3 -3
- package/dist/lib/browser/chunk-KYMKVE6M.mjs +128 -0
- package/dist/lib/browser/chunk-KYMKVE6M.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +11 -14
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-W6XREK5F.mjs → intent-resolver-WJGLKKVO.mjs} +5 -5
- package/dist/lib/browser/intent-resolver-WJGLKKVO.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-surface-QMI5KG4H.mjs → react-surface-57VRDOQT.mjs} +15 -15
- package/dist/lib/browser/react-surface-57VRDOQT.mjs.map +7 -0
- package/dist/lib/browser/{settings-LAJZQI4H.mjs → settings-U6UFQX32.mjs} +4 -4
- package/dist/lib/browser/settings-U6UFQX32.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +1 -3
- package/dist/lib/node/{AssistantDialog-SDS2TE5L.cjs → AssistantDialog-YI2BSGSX.cjs} +7 -7
- package/dist/lib/node/{ChatContainer-U6AVMAHY.cjs → ChatContainer-ZJ5JXF6A.cjs} +7 -7
- package/dist/lib/node/ChatContainer-ZJ5JXF6A.cjs.map +7 -0
- package/dist/lib/node/TemplateContainer-XWFYJB4T.cjs +104 -0
- package/dist/lib/node/TemplateContainer-XWFYJB4T.cjs.map +7 -0
- package/dist/lib/node/{ai-client-3EVTLXTT.cjs → ai-client-URCCYU6B.cjs} +4 -4
- package/dist/lib/node/{ai-client-3EVTLXTT.cjs.map → ai-client-URCCYU6B.cjs.map} +2 -2
- package/dist/lib/node/{app-graph-builder-TXHPXIIC.cjs → app-graph-builder-N5ZUUI2Z.cjs} +44 -14
- package/dist/lib/node/app-graph-builder-N5ZUUI2Z.cjs.map +7 -0
- package/dist/lib/node/{chunk-5UELRDHQ.cjs → chunk-APRU3QWK.cjs} +5 -13
- package/dist/lib/node/{chunk-5UELRDHQ.cjs.map → chunk-APRU3QWK.cjs.map} +3 -3
- package/dist/lib/node/{chunk-CWHFK36A.cjs → chunk-RPBKMP2E.cjs} +80 -117
- package/dist/lib/node/chunk-RPBKMP2E.cjs.map +7 -0
- package/dist/lib/node/{chunk-XBJO453B.cjs → chunk-ZKOC4ZFY.cjs} +61 -78
- package/dist/lib/node/chunk-ZKOC4ZFY.cjs.map +7 -0
- package/dist/lib/node/index.cjs +43 -46
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/{intent-resolver-MUJMV7II.cjs → intent-resolver-R3OSTIMH.cjs} +9 -9
- 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-SAJF4XBB.cjs → react-surface-NUQTM6MS.cjs} +22 -22
- package/dist/lib/node/react-surface-NUQTM6MS.cjs.map +7 -0
- package/dist/lib/node/{settings-NPXTE6ND.cjs → settings-TXGRCYAL.cjs} +7 -7
- package/dist/lib/node/settings-TXGRCYAL.cjs.map +7 -0
- package/dist/lib/node/types/index.cjs +12 -14
- package/dist/lib/node/types/index.cjs.map +2 -2
- package/dist/lib/node-esm/{AssistantDialog-KGA5HBFO.mjs → AssistantDialog-U2FQX5TD.mjs} +3 -3
- package/dist/lib/node-esm/{ChatContainer-XPNXNPSW.mjs → ChatContainer-QW3OOXTT.mjs} +3 -3
- package/dist/lib/node-esm/ChatContainer-QW3OOXTT.mjs.map +7 -0
- package/dist/lib/node-esm/TemplateContainer-EUM2X65J.mjs +79 -0
- package/dist/lib/node-esm/TemplateContainer-EUM2X65J.mjs.map +7 -0
- package/dist/lib/node-esm/{ai-client-LYCBXZI7.mjs → ai-client-WMHS5EGV.mjs} +1 -1
- package/dist/lib/node-esm/{ai-client-LYCBXZI7.mjs.map → ai-client-WMHS5EGV.mjs.map} +2 -2
- package/dist/lib/node-esm/{app-graph-builder-SV4WC2E2.mjs → app-graph-builder-DWBNIMHM.mjs} +39 -9
- package/dist/lib/node-esm/app-graph-builder-DWBNIMHM.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-GBBXIW5F.mjs +129 -0
- package/dist/lib/node-esm/chunk-GBBXIW5F.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-XFUXN5QU.mjs → chunk-MVDAY3CZ.mjs} +56 -92
- package/dist/lib/node-esm/chunk-MVDAY3CZ.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-ECYNZYEG.mjs → chunk-MXK2EANZ.mjs} +2 -9
- package/dist/lib/node-esm/{chunk-ECYNZYEG.mjs.map → chunk-MXK2EANZ.mjs.map} +3 -3
- package/dist/lib/node-esm/index.mjs +11 -14
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-DZY2O2DG.mjs → intent-resolver-H32TL4X6.mjs} +5 -5
- package/dist/lib/node-esm/intent-resolver-H32TL4X6.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-surface-R43NHNMC.mjs → react-surface-JBVZF6CP.mjs} +15 -15
- package/dist/lib/node-esm/react-surface-JBVZF6CP.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-K3JDH2I5.mjs → settings-DZU5PNXM.mjs} +4 -4
- package/dist/lib/node-esm/settings-DZU5PNXM.mjs.map +7 -0
- package/dist/lib/node-esm/types/index.mjs +1 -3
- package/dist/types/src/capabilities/ai-client.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/capabilities/index.d.ts +1 -1
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
- package/dist/types/src/components/AssistantSettings/AssistantSettings.d.ts.map +1 -1
- package/dist/types/src/components/ChatContainer.d.ts +3 -4
- package/dist/types/src/components/ChatContainer.d.ts.map +1 -1
- package/dist/types/src/components/ServiceRegistry/ServiceRegistry.d.ts +6 -0
- package/dist/types/src/components/ServiceRegistry/ServiceRegistry.d.ts.map +1 -0
- package/dist/types/src/components/ServiceRegistry/ServiceRegistry.stories.d.ts +8 -0
- package/dist/types/src/components/ServiceRegistry/ServiceRegistry.stories.d.ts.map +1 -0
- package/dist/types/src/components/ServiceRegistry/index.d.ts +2 -0
- package/dist/types/src/components/ServiceRegistry/index.d.ts.map +1 -0
- package/dist/types/src/components/TemplateContainer.d.ts.map +1 -1
- package/dist/types/src/components/Thread/ThreadContainer.d.ts.map +1 -1
- package/dist/types/src/components/Thread/ThreadContainer.stories.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +6 -2
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/hooks/processor.d.ts.map +1 -1
- package/dist/types/src/hooks/useChatProcessor.d.ts.map +1 -1
- package/dist/types/src/hooks/useMessageQueue.d.ts +3 -0
- package/dist/types/src/hooks/useMessageQueue.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +0 -3
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +1 -3
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/package.json +57 -57
- package/src/AssistantPlugin.tsx +2 -2
- package/src/capabilities/ai-client.ts +1 -0
- package/src/capabilities/app-graph-builder.ts +38 -6
- package/src/capabilities/index.ts +1 -1
- package/src/capabilities/intent-resolver.ts +3 -3
- package/src/capabilities/react-surface.tsx +9 -11
- package/src/capabilities/settings.ts +2 -2
- package/src/components/AssistantSettings/AssistantSettings.tsx +6 -28
- package/src/components/ChatContainer.tsx +8 -6
- package/src/components/ServiceRegistry/ServiceRegistry.stories.tsx +49 -0
- package/src/components/ServiceRegistry/ServiceRegistry.tsx +76 -0
- package/src/components/ServiceRegistry/index.ts +5 -0
- package/src/components/TemplateContainer.tsx +79 -3
- package/src/components/TemplateEditor/TemplateEditor.stories.tsx +2 -2
- package/src/components/TemplateEditor/TemplateForm.stories.tsx +2 -2
- package/src/components/Thread/ThreadContainer.stories.tsx +18 -9
- package/src/components/Thread/ThreadContainer.tsx +2 -24
- package/src/components/Thread/ThreadMessage.tsx +2 -5
- package/src/components/Toolbox/Toolbox.stories.tsx +1 -1
- package/src/components/index.ts +1 -1
- package/src/hooks/processor.ts +4 -26
- package/src/hooks/useChatProcessor.tsx +2 -3
- package/src/testing/test-services.ts +6 -6
- package/src/translations.ts +4 -5
- package/src/types/types.ts +1 -4
- package/dist/lib/browser/ChatContainer-GAYN3FEF.mjs.map +0 -7
- package/dist/lib/browser/TemplateContainer-WKU5XFSO.mjs +0 -22
- package/dist/lib/browser/TemplateContainer-WKU5XFSO.mjs.map +0 -7
- package/dist/lib/browser/app-graph-builder-ZXKGE3H5.mjs.map +0 -7
- package/dist/lib/browser/chunk-7CAHKTZQ.mjs.map +0 -7
- package/dist/lib/browser/chunk-BGMQ2YYP.mjs +0 -143
- package/dist/lib/browser/chunk-BGMQ2YYP.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-W6XREK5F.mjs.map +0 -7
- package/dist/lib/browser/react-surface-QMI5KG4H.mjs.map +0 -7
- package/dist/lib/browser/settings-LAJZQI4H.mjs.map +0 -7
- package/dist/lib/node/ChatContainer-U6AVMAHY.cjs.map +0 -7
- package/dist/lib/node/TemplateContainer-EQXKHWTF.cjs +0 -52
- package/dist/lib/node/TemplateContainer-EQXKHWTF.cjs.map +0 -7
- package/dist/lib/node/app-graph-builder-TXHPXIIC.cjs.map +0 -7
- package/dist/lib/node/chunk-CWHFK36A.cjs.map +0 -7
- package/dist/lib/node/chunk-XBJO453B.cjs.map +0 -7
- package/dist/lib/node/intent-resolver-MUJMV7II.cjs.map +0 -7
- package/dist/lib/node/react-surface-SAJF4XBB.cjs.map +0 -7
- package/dist/lib/node/settings-NPXTE6ND.cjs.map +0 -7
- package/dist/lib/node-esm/ChatContainer-XPNXNPSW.mjs.map +0 -7
- package/dist/lib/node-esm/TemplateContainer-3LEBT5ZC.mjs +0 -23
- package/dist/lib/node-esm/TemplateContainer-3LEBT5ZC.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-builder-SV4WC2E2.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-R7Q3OHWG.mjs +0 -144
- package/dist/lib/node-esm/chunk-R7Q3OHWG.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-XFUXN5QU.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-DZY2O2DG.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-R43NHNMC.mjs.map +0 -7
- package/dist/lib/node-esm/settings-K3JDH2I5.mjs.map +0 -7
- package/dist/types/src/components/PromptSettings.d.ts +0 -6
- package/dist/types/src/components/PromptSettings.d.ts.map +0 -1
- package/src/components/PromptSettings.tsx +0 -91
- /package/dist/lib/browser/{AssistantDialog-I47GUXWR.mjs.map → AssistantDialog-YSHMAHW5.mjs.map} +0 -0
- /package/dist/lib/node/{AssistantDialog-SDS2TE5L.cjs.map → AssistantDialog-YI2BSGSX.cjs.map} +0 -0
- /package/dist/lib/node-esm/{AssistantDialog-KGA5HBFO.mjs.map → AssistantDialog-U2FQX5TD.mjs.map} +0 -0
|
@@ -26,15 +26,15 @@ 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
|
|
34
|
+
module.exports = __toCommonJS(AssistantDialog_YI2BSGSX_exports);
|
|
35
|
+
var import_chunk_RPBKMP2E = require("./chunk-RPBKMP2E.cjs");
|
|
36
36
|
var import_chunk_GBUNQ257 = require("./chunk-GBUNQ257.cjs");
|
|
37
|
-
var
|
|
37
|
+
var import_chunk_APRU3QWK = require("./chunk-APRU3QWK.cjs");
|
|
38
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");
|
|
@@ -125,7 +125,7 @@ var AssistantDialog = ({ chat }) => {
|
|
|
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
|
|
@@ -26,15 +26,15 @@ 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
|
|
34
|
+
module.exports = __toCommonJS(ChatContainer_ZJ5JXF6A_exports);
|
|
35
|
+
var import_chunk_RPBKMP2E = require("./chunk-RPBKMP2E.cjs");
|
|
36
36
|
var import_chunk_GBUNQ257 = require("./chunk-GBUNQ257.cjs");
|
|
37
|
-
var
|
|
37
|
+
var import_chunk_APRU3QWK = require("./chunk-APRU3QWK.cjs");
|
|
38
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");
|
|
@@ -46,7 +46,7 @@ var ChatContainer = ({ role, chat, associatedArtifact }) => {
|
|
|
46
46
|
return /* @__PURE__ */ import_react.default.createElement(import_react_ui_stack.StackItem.Content, {
|
|
47
47
|
role,
|
|
48
48
|
classNames: "container-max-width"
|
|
49
|
-
}, /* @__PURE__ */ import_react.default.createElement(
|
|
49
|
+
}, /* @__PURE__ */ import_react.default.createElement(import_chunk_RPBKMP2E.ThreadContainer, {
|
|
50
50
|
chat,
|
|
51
51
|
settings,
|
|
52
52
|
transcription,
|
|
@@ -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
|
+
}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var TemplateContainer_XWFYJB4T_exports = {};
|
|
30
|
+
__export(TemplateContainer_XWFYJB4T_exports, {
|
|
31
|
+
TemplateContainer: () => TemplateContainer,
|
|
32
|
+
default: () => TemplateContainer_default
|
|
33
|
+
});
|
|
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
|
+
var import_effect = require("effect");
|
|
39
|
+
var import_react = __toESM(require("react"));
|
|
40
|
+
var import_async = require("@dxos/async");
|
|
41
|
+
var import_react_ui = require("@dxos/react-ui");
|
|
42
|
+
var import_react_ui_stack = require("@dxos/react-ui-stack");
|
|
43
|
+
var TemplateContainer = ({ template, role }) => {
|
|
44
|
+
const { t } = (0, import_react_ui.useTranslation)(import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN);
|
|
45
|
+
const handleKindChange = (0, import_react.useCallback)((value) => {
|
|
46
|
+
const kind = import_effect.Match.type().pipe(import_effect.Match.withReturnType(), import_effect.Match.when("always", () => ({
|
|
47
|
+
include: "always"
|
|
48
|
+
})), import_effect.Match.when("schema-matching", () => ({
|
|
49
|
+
include: "schema-matching",
|
|
50
|
+
typename: ""
|
|
51
|
+
})), import_effect.Match.when("automatically", () => ({
|
|
52
|
+
include: "automatically",
|
|
53
|
+
description: ""
|
|
54
|
+
})), import_effect.Match.orElse(() => ({
|
|
55
|
+
include: "manual"
|
|
56
|
+
})))(value);
|
|
57
|
+
template.kind = kind;
|
|
58
|
+
}, [
|
|
59
|
+
template
|
|
60
|
+
]);
|
|
61
|
+
const handleTypenameChange = (0, import_react.useCallback)((0, import_async.debounce)((event) => {
|
|
62
|
+
if (template.kind.include === "schema-matching") {
|
|
63
|
+
template.kind.typename = event.target.value;
|
|
64
|
+
}
|
|
65
|
+
}, 300), [
|
|
66
|
+
template.kind.include
|
|
67
|
+
]);
|
|
68
|
+
const handleDescriptionChange = (0, import_react.useCallback)((0, import_async.debounce)((event) => {
|
|
69
|
+
if (template.kind.include === "automatically") {
|
|
70
|
+
template.kind.description = event.target.value;
|
|
71
|
+
}
|
|
72
|
+
}, 300), [
|
|
73
|
+
template.kind.include
|
|
74
|
+
]);
|
|
75
|
+
return /* @__PURE__ */ import_react.default.createElement(import_react_ui_stack.StackItem.Content, {
|
|
76
|
+
role,
|
|
77
|
+
toolbar: true,
|
|
78
|
+
classNames: "container-max-width"
|
|
79
|
+
}, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Toolbar.Root, null, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Select.Root, {
|
|
80
|
+
value: template.kind.include,
|
|
81
|
+
onValueChange: handleKindChange
|
|
82
|
+
}, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Toolbar.Button, {
|
|
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, import_chunk_APRU3QWK.TemplateKinds.map((kind) => /* @__PURE__ */ import_react.default.createElement(import_react_ui.Select.Option, {
|
|
85
|
+
key: kind,
|
|
86
|
+
value: kind
|
|
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, {
|
|
88
|
+
placeholder: t("typename placeholder"),
|
|
89
|
+
defaultValue: template.kind.typename,
|
|
90
|
+
onChange: handleTypenameChange
|
|
91
|
+
})), template.kind.include === "automatically" && /* @__PURE__ */ import_react.default.createElement(import_react_ui.Input.Root, null, /* @__PURE__ */ import_react.default.createElement(import_react_ui.Input.TextInput, {
|
|
92
|
+
placeholder: t("description placeholder"),
|
|
93
|
+
defaultValue: template.kind.description,
|
|
94
|
+
onChange: handleDescriptionChange
|
|
95
|
+
}))), /* @__PURE__ */ import_react.default.createElement(import_chunk_XI2ARIEO.TemplateEditor, {
|
|
96
|
+
template
|
|
97
|
+
}));
|
|
98
|
+
};
|
|
99
|
+
var TemplateContainer_default = TemplateContainer;
|
|
100
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
101
|
+
0 && (module.exports = {
|
|
102
|
+
TemplateContainer
|
|
103
|
+
});
|
|
104
|
+
//# sourceMappingURL=TemplateContainer-XWFYJB4T.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 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 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
|
+
"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
|
+
}
|
|
@@ -16,11 +16,11 @@ 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(
|
|
23
|
+
module.exports = __toCommonJS(ai_client_URCCYU6B_exports);
|
|
24
24
|
var import_chunk_GBUNQ257 = require("./chunk-GBUNQ257.cjs");
|
|
25
25
|
var import_chunk_Q5XWEMHB = require("./chunk-Q5XWEMHB.cjs");
|
|
26
26
|
var import_signals_core = require("@preact/signals-core");
|
|
@@ -46,4 +46,4 @@ var ai_client_default = (context) => {
|
|
|
46
46
|
});
|
|
47
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
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/capabilities/ai-client.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { effect, signal } from '@preact/signals-core';\n\nimport { Capabilities, contributes, type PluginsContext } from '@dxos/app-framework';\nimport { type AIServiceClient, AIServiceEdgeClient, OllamaClient } from '@dxos/assistant';\nimport { ClientCapabilities } from '@dxos/plugin-client';\n\nimport { AssistantCapabilities } from './capabilities';\nimport { ASSISTANT_PLUGIN } from '../meta';\nimport { type AssistantSettingsProps } from '../types';\n\n// TODO(wittjosiah): Factor out.\nconst DEFAULT_AI_SERVICE_URL = 'http://localhost:8788';\n\nexport default (context: PluginsContext) => {\n const client = context.requestCapability(ClientCapabilities.Client);\n const endpoint = client.config.values.runtime?.services?.ai?.server ?? DEFAULT_AI_SERVICE_URL;\n\n const ai = signal<AIServiceClient>(new AIServiceEdgeClient({ endpoint }));\n\n const unsubscribe = effect(() => {\n const settings = context\n .requestCapability(Capabilities.SettingsStore)\n .getStore<AssistantSettingsProps>(ASSISTANT_PLUGIN)?.value;\n\n if (settings?.llmProvider === 'ollama') {\n ai.value = new OllamaClient();\n } else {\n ai.value = new AIServiceEdgeClient({ endpoint });\n }\n });\n\n return contributes(AssistantCapabilities.AiClient, ai, () => unsubscribe());\n};\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAIA,0BAA+B;AAE/B,2BAA+D;AAC/D,uBAAwE;AACxE,2BAAmC;AAOnC,IAAMA,yBAAyB;AAE/B,IAAA,oBAAe,CAACC,YAAAA;AACd,QAAMC,SAASD,QAAQE,kBAAkBC,wCAAmBC,MAAM;AAClE,QAAMC,WAAWJ,OAAOK,OAAOC,OAAOC,SAASC,UAAUC,IAAIC,UAAUZ;AAEvE,QAAMW,SAAKE,4BAAwB,IAAIC,qCAAoB;IAAER;EAAS,CAAA,CAAA;AAEtE,QAAMS,kBAAcC,4BAAO,MAAA;
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { effect, signal } from '@preact/signals-core';\n\nimport { Capabilities, contributes, type PluginsContext } from '@dxos/app-framework';\nimport { type AIServiceClient, AIServiceEdgeClient, OllamaClient } from '@dxos/assistant';\nimport { ClientCapabilities } from '@dxos/plugin-client';\n\nimport { AssistantCapabilities } from './capabilities';\nimport { ASSISTANT_PLUGIN } from '../meta';\nimport { type AssistantSettingsProps } from '../types';\n\n// TODO(wittjosiah): Factor out.\nconst DEFAULT_AI_SERVICE_URL = 'http://localhost:8788';\n\nexport default (context: PluginsContext) => {\n const client = context.requestCapability(ClientCapabilities.Client);\n const endpoint = client.config.values.runtime?.services?.ai?.server ?? DEFAULT_AI_SERVICE_URL;\n\n const ai = signal<AIServiceClient>(new AIServiceEdgeClient({ endpoint }));\n\n const unsubscribe = effect(() => {\n // TODO(burdon): Could be undefined.\n const settings = context\n .requestCapability(Capabilities.SettingsStore)\n .getStore<AssistantSettingsProps>(ASSISTANT_PLUGIN)?.value;\n\n if (settings?.llmProvider === 'ollama') {\n ai.value = new OllamaClient();\n } else {\n ai.value = new AIServiceEdgeClient({ endpoint });\n }\n });\n\n return contributes(AssistantCapabilities.AiClient, ai, () => unsubscribe());\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAIA,0BAA+B;AAE/B,2BAA+D;AAC/D,uBAAwE;AACxE,2BAAmC;AAOnC,IAAMA,yBAAyB;AAE/B,IAAA,oBAAe,CAACC,YAAAA;AACd,QAAMC,SAASD,QAAQE,kBAAkBC,wCAAmBC,MAAM;AAClE,QAAMC,WAAWJ,OAAOK,OAAOC,OAAOC,SAASC,UAAUC,IAAIC,UAAUZ;AAEvE,QAAMW,SAAKE,4BAAwB,IAAIC,qCAAoB;IAAER;EAAS,CAAA,CAAA;AAEtE,QAAMS,kBAAcC,4BAAO,MAAA;AAEzB,UAAMC,WAAWhB,QACdE,kBAAkBe,kCAAaC,aAAa,EAC5CC,SAAiCC,sCAAAA,GAAmBC;AAEvD,QAAIL,UAAUM,gBAAgB,UAAU;AACtCZ,SAAGW,QAAQ,IAAIE,8BAAAA;IACjB,OAAO;AACLb,SAAGW,QAAQ,IAAIR,qCAAoB;QAAER;MAAS,CAAA;IAChD;EACF,CAAA;AAEA,aAAOmB,kCAAYC,4CAAsBC,UAAUhB,IAAI,MAAMI,YAAAA,CAAAA;AAC/D;",
|
|
6
6
|
"names": ["DEFAULT_AI_SERVICE_URL", "context", "client", "requestCapability", "ClientCapabilities", "Client", "endpoint", "config", "values", "runtime", "services", "ai", "server", "signal", "AIServiceEdgeClient", "unsubscribe", "effect", "settings", "Capabilities", "SettingsStore", "getStore", "ASSISTANT_PLUGIN", "value", "llmProvider", "OllamaClient", "contributes", "AssistantCapabilities", "AiClient"]
|
|
7
7
|
}
|
|
@@ -16,12 +16,12 @@ 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
|
|
23
|
+
module.exports = __toCommonJS(app_graph_builder_N5ZUUI2Z_exports);
|
|
24
|
+
var import_chunk_APRU3QWK = require("./chunk-APRU3QWK.cjs");
|
|
25
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");
|
|
@@ -90,9 +90,39 @@ var app_graph_builder_default = (context) => (0, import_app_framework.contribute
|
|
|
90
90
|
}
|
|
91
91
|
]
|
|
92
92
|
}),
|
|
93
|
+
(0, import_plugin_graph.createExtension)({
|
|
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
|
+
}),
|
|
93
123
|
(0, import_plugin_graph.createExtension)({
|
|
94
124
|
id: `${import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN}/object-chat-companion`,
|
|
95
|
-
filter: (node) => (0, import_echo.
|
|
125
|
+
filter: (node) => (0, import_echo.isReactiveObject)(node.data) && node.data.assistantChatQueue && node.data.type !== import_chunk_APRU3QWK.AIChatType.typename,
|
|
96
126
|
connector: ({ node }) => [
|
|
97
127
|
{
|
|
98
128
|
id: [
|
|
@@ -116,9 +146,9 @@ var app_graph_builder_default = (context) => (0, import_app_framework.contribute
|
|
|
116
146
|
}),
|
|
117
147
|
(0, import_plugin_graph.createExtension)({
|
|
118
148
|
id: `${import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN}/root`,
|
|
119
|
-
filter: (node) => node.
|
|
149
|
+
filter: (node) => (0, import_echo.isSpace)(node.data),
|
|
120
150
|
connector: ({ node }) => {
|
|
121
|
-
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));
|
|
122
152
|
return templates.length > 0 ? [
|
|
123
153
|
{
|
|
124
154
|
id: `${import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN}/templates`,
|
|
@@ -142,7 +172,7 @@ var app_graph_builder_default = (context) => (0, import_app_framework.contribute
|
|
|
142
172
|
id: `${import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN}/templates`,
|
|
143
173
|
filter: (node) => node.id === `${import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN}/templates`,
|
|
144
174
|
connector: ({ node }) => {
|
|
145
|
-
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));
|
|
146
176
|
return templates.toSorted((a, b) => {
|
|
147
177
|
const nameA = a.name ?? "";
|
|
148
178
|
const nameB = b.name ?? "";
|
|
@@ -153,7 +183,7 @@ var app_graph_builder_default = (context) => (0, import_app_framework.contribute
|
|
|
153
183
|
data: template,
|
|
154
184
|
properties: {
|
|
155
185
|
label: template.name ?? [
|
|
156
|
-
"
|
|
186
|
+
"template title placeholder",
|
|
157
187
|
{
|
|
158
188
|
ns: import_chunk_Q5XWEMHB.ASSISTANT_PLUGIN
|
|
159
189
|
}
|
|
@@ -165,16 +195,16 @@ var app_graph_builder_default = (context) => (0, import_app_framework.contribute
|
|
|
165
195
|
})
|
|
166
196
|
]);
|
|
167
197
|
var getOrCreateChat = async (dispatch, space) => {
|
|
168
|
-
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();
|
|
169
199
|
if (objects.length > 0) {
|
|
170
200
|
return objects[objects.length - 1];
|
|
171
201
|
}
|
|
172
|
-
const { data } = await dispatch((0, import_app_framework.createIntent)(
|
|
202
|
+
const { data } = await dispatch((0, import_app_framework.createIntent)(import_chunk_APRU3QWK.AssistantAction.CreateChat, {
|
|
173
203
|
spaceId: space.id
|
|
174
204
|
}));
|
|
175
|
-
(0, import_invariant.invariant)(data?.object instanceof
|
|
205
|
+
(0, import_invariant.invariant)(data?.object instanceof import_chunk_APRU3QWK.AIChatType, void 0, {
|
|
176
206
|
F: __dxlog_file,
|
|
177
|
-
L:
|
|
207
|
+
L: 192,
|
|
178
208
|
S: void 0,
|
|
179
209
|
A: [
|
|
180
210
|
"data?.object instanceof AIChatType",
|
|
@@ -187,4 +217,4 @@ var getOrCreateChat = async (dispatch, space) => {
|
|
|
187
217
|
}));
|
|
188
218
|
return data.object;
|
|
189
219
|
};
|
|
190
|
-
//# 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": ";;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAOO;AACP,uBAA0B;AAC1B,2BAAmC;AACnC,mBAAqF;AACrF,0BAAoD;AACpD,0BAA6B;AAC7B,IAAAA,gBAA4B;AAC5B,kBAQO;;AAKP,IAAA,4BAAe,CAACC,gBACdC,kCAAYC,kCAAaC,iBAAiB;MACxCC,qCAAgB;IACdC,IAAI,GAAGC,sCAAAA;IACPC,QAAQ,CAACC,SAA6BA,KAAKH,OAAOI;IAClDC,SAAS,MAAM;MACb;QACEL,IAAI,GAAGM,kCAAaC,aAAaC,IAAI;QACrCC,MAAM,YAAA;AACJ,gBAAM,EAAEC,iBAAiBC,SAAQ,IAAKhB,QAAQiB,kBAAkBf,kCAAagB,gBAAgB;AAC7F,gBAAMC,SAASnB,QAAQiB,kBAAkBG,wCAAmBC,MAAM;AAClE,gBAAMC,SAAStB,QAAQiB,kBAAkBf,kCAAaqB,MAAM;AAC5D,gBAAM,EAAEC,MAAK,IAAKxB,QAAQiB,kBAAkBf,kCAAauB,QAAQ;AAIjE,cAAIC;AACJ,cAAIJ,OAAOK,OAAOC,SAAS,GAAG;AAC5B,kBAAMpB,OAAOgB,MAAMK,SAASP,OAAOK,OAAO,CAAA,CAAE;AAC5C,gBAAInB,MAAM;AACR,oBAAMsB,YAAQC,sBAASvB,KAAKM,IAAI;AAChC,kBAAIgB,OAAO;AACTJ,uBAAO,MAAMM,gBAAgBhB,UAAUc,KAAAA;cACzC;YACF;UACF,OAAO;AACL,kBAAMA,QAAQX,OAAOc,OAAOC;AAC5BR,mBAAO,MAAMM,gBAAgBhB,UAAUc,KAAAA;UACzC;AAEA,cAAI,CAACJ,MAAM;AACT;UACF;AAEA,gBAAMV,aACJmB,mCAAaxB,kCAAaC,cAAc;YACtCwB,MAAM;YACNC,SAASC;YACTC,SAAS;cACPC,OAAO;cACPC,YAAY;cACZC,OAAO;gBACLhB;cACF;YACF;UACF,CAAA,CAAA;QAEJ;QACAiB,YAAY;UACVC,OAAO;YAAC;YAAwB;cAAEC,IAAIvC;YAAiB;;UACvDwC,MAAM;UACNC,aAAa;UACbC,UAAU;UACVC,YAAY;YACVC,OAAO;YACPC,SAAS;UACX;QACF;MACF;;EAEJ,CAAA;MAEA/C,qCAAgB;IACdC,IAAI,GAAGC,sCAAAA;IACPC,QAAQ,CAACC,SAA6BA,KAAKH,OAAO;IAClD+C,WAAW,CAAC,EAAE5C,KAAI,MAAE;AAClB,YAAMc,SAAStB,QAAQiB,kBAAkBf,kCAAaqB,MAAM;AAC5D,YAAMJ,SAASnB,QAAQiB,kBAAkBG,wCAAmBC,MAAM;AAClE,YAAM,EAAEgC,QAAO,QAAKC,qBAAQhC,OAAOiC,SAAS;AAC5C,YAAMzB,QAAQuB,UAAUlC,OAAOc,OAAOuB,IAAIH,OAAAA,IAAW;AAErD,aAAO;QACL;UACEhD,IAAI;YAACG,KAAKH;YAAI;YAAoBoD,KAAKC,sCAAAA;UACvCC,MAAMC;UACN9C,MAAMgB;UACNa,YAAY;YACVC,OAAO;cAAC;cAA0B;gBAAEC,IAAIvC;cAAiB;;YACzDwC,MAAM;YACNC,aAAa;UACf;QACF;;IAEJ;EACF,CAAA;MAEA3C,qCAAgB;IACdC,IAAI,GAAGC,sCAAAA;IACPC,QAAQ,CAACC,aACPqD,8BAAiBrD,KAAKM,IAAI,KAAKN,KAAKM,KAAKgD,sBAAsBtD,KAAKM,KAAK6C,SAASI,iCAAWC;IAC/FZ,WAAW,CAAC,EAAE5C,KAAI,MAAO;MACvB;QACEH,IAAI;UAACG,KAAKH;UAAI;UAAkBoD,KAAKC,sCAAAA;QACrCC,MAAMM;QACNnD,MAAM;QACN6B,YAAY;UACVC,OAAO;YAAC;YAAwB;cAAEC,IAAIvC;YAAiB;;UACvDwC,MAAM;UACNE,UAAU;QACZ;MACF;;EAEJ,CAAA;MAEA5C,qCAAgB;IACdC,IAAI,GAAGC,sCAAAA;IACPC,QAAQ,CAACC,aAA8B0D,qBAAQ1D,KAAKM,IAAI;IACxDsC,WAAW,CAAC,EAAE5C,KAAI,MAAE;AAClB,YAAM2D,gBAAYC,kCAAa5D,KAAKM,MAAMuD,mBAAOC,OAAOC,kCAAAA,CAAAA;AACxD,aAAOJ,UAAUvC,SAAS,IACtB;QACE;UACEvB,IAAI,GAAGC,sCAAAA;UACPqD,MAAM,GAAGrD,sCAAAA;UACTQ,MAAM;UACN6B,YAAY;YACVC,OAAO;cAAC;cAAmB;gBAAEC,IAAIvC;cAAiB;;YAClDwC,MAAM;YACNhB,OAAOtB,KAAKM;UACd;QACF;UAEF,CAAA;IACN;EACF,CAAA;MAEAV,qCAAgB;IACdC,IAAI,GAAGC,sCAAAA;IACPC,QAAQ,CAACC,SAA+CA,KAAKH,OAAO,GAAGC,sCAAAA;IACvE8C,WAAW,CAAC,EAAE5C,KAAI,MAAE;AAClB,YAAM2D,gBAAYC,kCAAa5D,KAAKmC,WAAWb,OAAOuC,mBAAOC,OAAOC,kCAAAA,CAAAA;AACpE,aAAOJ,UACJK,SAAS,CAACC,GAAGC,MAAAA;AACZ,cAAMC,QAAQF,EAAEG,QAAQ;AACxB,cAAMC,QAAQH,EAAEE,QAAQ;AACxB,eAAOD,MAAMG,cAAcD,KAAAA;MAC7B,CAAA,EACCE,IAAI,CAACC,cAAc;QAClB3E,QAAI4E,8BAAiBD,QAAAA;QACrBrB,MAAM,GAAGrD,sCAAAA;QACTQ,MAAMkE;QACNrC,YAAY;UACVC,OAAOoC,SAASJ,QAAQ;YAAC;YAA8B;cAAE/B,IAAIvC;YAAiB;;UAC9EwC,MAAM;QACR;MACF,EAAA;IACJ;EACF,CAAA;CACD;AAGH,IAAMd,kBAAkB,OAAOhB,UAAmCc,UAAAA;AAChE,QAAM,EAAEoD,QAAO,IAAK,MAAMpD,MAAMqD,GAAGC,MAAMf,mBAAOC,OAAOP,gCAAAA,CAAAA,EAAasB,IAAG;AAEvE,MAAIH,QAAQtD,SAAS,GAAG;AAEtB,WAAOsD,QAAQA,QAAQtD,SAAS,CAAA;EAClC;AAEA,QAAM,EAAEd,KAAI,IAAK,MAAME,aAASmB,mCAAamD,sCAAgBC,YAAY;IAAElC,SAASvB,MAAMzB;EAAG,CAAA,CAAA;AAC7FmF,kCAAU1E,MAAM2E,kBAAkB1B,kCAAAA,QAAAA;;;;;;;;;AAClC,QAAM/C,aAASmB,mCAAauD,0BAAYC,WAAW;IAAEC,QAAQ9D;IAAO2D,QAAQ3E,KAAK2E;EAAO,CAAA,CAAA;AACxF,SAAO3E,KAAK2E;AACd;",
|
|
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,13 +16,12 @@ 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,
|
|
24
24
|
AssistantSettingsSchema: () => AssistantSettingsSchema,
|
|
25
|
-
LLM_PROVIDERS: () => LLM_PROVIDERS,
|
|
26
25
|
ServiceType: () => ServiceType,
|
|
27
26
|
TemplateInputSchema: () => TemplateInputSchema,
|
|
28
27
|
TemplateInputType: () => TemplateInputType,
|
|
@@ -31,7 +30,7 @@ __export(chunk_5UELRDHQ_exports, {
|
|
|
31
30
|
TemplateType: () => TemplateType,
|
|
32
31
|
categoryIcons: () => categoryIcons
|
|
33
32
|
});
|
|
34
|
-
module.exports = __toCommonJS(
|
|
33
|
+
module.exports = __toCommonJS(chunk_APRU3QWK_exports);
|
|
35
34
|
var import_chunk_Q5XWEMHB = require("./chunk-Q5XWEMHB.cjs");
|
|
36
35
|
var import_echo_schema = require("@dxos/echo-schema");
|
|
37
36
|
var import_conductor = require("@dxos/conductor");
|
|
@@ -184,16 +183,10 @@ var AssistantAction;
|
|
|
184
183
|
}
|
|
185
184
|
AssistantAction2.CreateTemplate = CreateTemplate;
|
|
186
185
|
})(AssistantAction || (AssistantAction = {}));
|
|
187
|
-
var LLM_PROVIDERS = [
|
|
188
|
-
"edge",
|
|
189
|
-
"ollama",
|
|
190
|
-
"lmstudio"
|
|
191
|
-
];
|
|
192
186
|
var AssistantSettingsSchema = import_echo_schema4.S.mutable(import_echo_schema4.S.Struct({
|
|
193
|
-
llmProvider: import_echo_schema4.S.optional(import_echo_schema4.S.Literal(
|
|
187
|
+
llmProvider: import_echo_schema4.S.optional(import_echo_schema4.S.Literal("edge", "ollama")),
|
|
194
188
|
edgeModel: import_echo_schema4.S.optional(import_echo_schema4.S.String),
|
|
195
189
|
ollamaModel: import_echo_schema4.S.optional(import_echo_schema4.S.String),
|
|
196
|
-
lmstudioModel: import_echo_schema4.S.optional(import_echo_schema4.S.String),
|
|
197
190
|
customPrompts: import_echo_schema4.S.optional(import_echo_schema4.S.Boolean)
|
|
198
191
|
}));
|
|
199
192
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -202,7 +195,6 @@ var AssistantSettingsSchema = import_echo_schema4.S.mutable(import_echo_schema4.
|
|
|
202
195
|
ApiAuthorization,
|
|
203
196
|
AssistantAction,
|
|
204
197
|
AssistantSettingsSchema,
|
|
205
|
-
LLM_PROVIDERS,
|
|
206
198
|
ServiceType,
|
|
207
199
|
TemplateInputSchema,
|
|
208
200
|
TemplateInputType,
|
|
@@ -211,4 +203,4 @@ var AssistantSettingsSchema = import_echo_schema4.S.mutable(import_echo_schema4.
|
|
|
211
203
|
TemplateType,
|
|
212
204
|
categoryIcons
|
|
213
205
|
});
|
|
214
|
-
//# sourceMappingURL=chunk-
|
|
206
|
+
//# sourceMappingURL=chunk-APRU3QWK.cjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
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
|
|
5
|
-
"mappings": "
|
|
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", "
|
|
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
7
|
}
|