@dxos/plugin-assistant 0.8.3-main.672df60 → 0.8.3-staging.0fa589b
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-UAZSN6GT.mjs → AssistantDialog-MQOOR364.mjs} +5 -4
- package/dist/lib/browser/BlueprintContainer-AT5Y7EXG.mjs +321 -0
- package/dist/lib/browser/BlueprintContainer-AT5Y7EXG.mjs.map +7 -0
- package/dist/lib/browser/{ChatContainer-UTN3AO5U.mjs → ChatContainer-C2NEAS3A.mjs} +5 -4
- package/dist/lib/browser/{TemplateContainer-AKUYL4AV.mjs → TemplateContainer-QQHVOTSI.mjs} +2 -2
- package/dist/lib/browser/TemplateContainer-QQHVOTSI.mjs.map +7 -0
- package/dist/lib/browser/{ai-client-COXVUC6V.mjs → ai-client-MK2ZZII2.mjs} +12 -8
- package/dist/lib/browser/ai-client-MK2ZZII2.mjs.map +7 -0
- package/dist/lib/browser/{app-graph-builder-56OZ5RW4.mjs → app-graph-builder-E4H5DCOJ.mjs} +52 -33
- package/dist/lib/browser/app-graph-builder-E4H5DCOJ.mjs.map +7 -0
- package/dist/lib/browser/{chunk-NBSPGIHL.mjs → chunk-AAOKC2JN.mjs} +17 -15
- package/dist/lib/browser/chunk-AAOKC2JN.mjs.map +7 -0
- package/dist/lib/browser/{chunk-6SD7S7W5.mjs → chunk-BI6AHRNJ.mjs} +8 -8
- package/dist/lib/browser/{chunk-6SD7S7W5.mjs.map → chunk-BI6AHRNJ.mjs.map} +3 -3
- package/dist/lib/browser/{chunk-Q6XE3O3E.mjs → chunk-JO4W3MF7.mjs} +44 -73
- package/dist/lib/browser/chunk-JO4W3MF7.mjs.map +7 -0
- package/dist/lib/browser/chunk-MEGMOFJB.mjs +16 -0
- package/dist/lib/browser/chunk-MEGMOFJB.mjs.map +7 -0
- package/dist/lib/browser/{chunk-3F44MBHU.mjs → chunk-UE3IZ4PN.mjs} +1 -1
- package/dist/lib/browser/{chunk-3F44MBHU.mjs.map → chunk-UE3IZ4PN.mjs.map} +2 -2
- package/dist/lib/browser/index.mjs +84 -30
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/{intent-resolver-GWELYIX2.mjs → intent-resolver-3UICTGPM.mjs} +12 -8
- package/dist/lib/browser/intent-resolver-3UICTGPM.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-surface-DGS34EON.mjs → react-surface-LXCNUSZN.mjs} +29 -14
- package/dist/lib/browser/react-surface-LXCNUSZN.mjs.map +7 -0
- package/dist/lib/browser/{settings-BTFB7IQ6.mjs → settings-XRHXVWGB.mjs} +4 -4
- package/dist/lib/browser/settings-XRHXVWGB.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +1 -1
- package/dist/lib/node/{AssistantDialog-RTB5Q7FP.cjs → AssistantDialog-AN4Z6YUV.cjs} +9 -8
- package/dist/lib/node/{AssistantDialog-RTB5Q7FP.cjs.map → AssistantDialog-AN4Z6YUV.cjs.map} +1 -1
- package/dist/lib/node/BlueprintContainer-NOWLDYCZ.cjs +344 -0
- package/dist/lib/node/BlueprintContainer-NOWLDYCZ.cjs.map +7 -0
- package/dist/lib/node/{ChatContainer-P3JL4VZ7.cjs → ChatContainer-VKYBQHUB.cjs} +9 -8
- package/dist/lib/node/{ChatContainer-P3JL4VZ7.cjs.map → ChatContainer-VKYBQHUB.cjs.map} +1 -1
- package/dist/lib/node/{TemplateContainer-CTG2MB4W.cjs → TemplateContainer-JZF2DCCG.cjs} +5 -5
- package/dist/lib/node/TemplateContainer-JZF2DCCG.cjs.map +7 -0
- package/dist/lib/node/{ai-client-R2CGEYZW.cjs → ai-client-7HNSMUMT.cjs} +14 -10
- package/dist/lib/node/ai-client-7HNSMUMT.cjs.map +7 -0
- package/dist/lib/node/{app-graph-builder-QLF353LH.cjs → app-graph-builder-PPR5B5KU.cjs} +63 -44
- package/dist/lib/node/app-graph-builder-PPR5B5KU.cjs.map +7 -0
- package/dist/lib/node/chunk-FUAGEO7Q.cjs +52 -0
- package/dist/lib/node/chunk-FUAGEO7Q.cjs.map +7 -0
- package/dist/lib/node/{chunk-BWL5A3O5.cjs → chunk-IKZBMHSW.cjs} +14 -14
- package/dist/lib/node/{chunk-BWL5A3O5.cjs.map → chunk-IKZBMHSW.cjs.map} +3 -3
- package/dist/lib/node/{chunk-UNVDZOLA.cjs → chunk-LMDJEGZ2.cjs} +28 -26
- package/dist/lib/node/chunk-LMDJEGZ2.cjs.map +7 -0
- package/dist/lib/node/{chunk-PG7YNQ4R.cjs → chunk-NIDICM57.cjs} +66 -96
- package/dist/lib/node/chunk-NIDICM57.cjs.map +7 -0
- package/dist/lib/node/{chunk-TS3H5OSX.cjs → chunk-QGPWY6GW.cjs} +4 -4
- package/dist/lib/node/{chunk-TS3H5OSX.cjs.map → chunk-QGPWY6GW.cjs.map} +2 -2
- package/dist/lib/node/index.cjs +129 -73
- package/dist/lib/node/index.cjs.map +4 -4
- package/dist/lib/node/{intent-resolver-U7663JU7.cjs → intent-resolver-QSWGTKON.cjs} +17 -13
- package/dist/lib/node/intent-resolver-QSWGTKON.cjs.map +7 -0
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/{react-surface-QXZTILW6.cjs → react-surface-D3NBYRZ6.cjs} +41 -26
- package/dist/lib/node/react-surface-D3NBYRZ6.cjs.map +7 -0
- package/dist/lib/node/{settings-LBJMT6YB.cjs → settings-2JXLKYGE.cjs} +7 -7
- package/dist/lib/node/settings-2JXLKYGE.cjs.map +7 -0
- package/dist/lib/node/types/index.cjs +14 -14
- package/dist/lib/node/types/index.cjs.map +1 -1
- package/dist/lib/node-esm/{AssistantDialog-DONAO6SA.mjs → AssistantDialog-6WEMLUPU.mjs} +5 -4
- package/dist/lib/{browser/AssistantDialog-UAZSN6GT.mjs.map → node-esm/AssistantDialog-6WEMLUPU.mjs.map} +1 -1
- package/dist/lib/node-esm/BlueprintContainer-STOJAVML.mjs +322 -0
- package/dist/lib/node-esm/BlueprintContainer-STOJAVML.mjs.map +7 -0
- package/dist/lib/node-esm/{ChatContainer-FVIGCDIG.mjs → ChatContainer-3MVBTUJN.mjs} +5 -4
- package/dist/lib/{browser/ChatContainer-UTN3AO5U.mjs.map → node-esm/ChatContainer-3MVBTUJN.mjs.map} +1 -1
- package/dist/lib/node-esm/{TemplateContainer-IVDQ4XQG.mjs → TemplateContainer-SOEWY2ZN.mjs} +2 -2
- package/dist/lib/node-esm/TemplateContainer-SOEWY2ZN.mjs.map +7 -0
- package/dist/lib/node-esm/{ai-client-I5LXHMOZ.mjs → ai-client-XGZBJ6BE.mjs} +12 -8
- package/dist/lib/node-esm/ai-client-XGZBJ6BE.mjs.map +7 -0
- package/dist/lib/node-esm/{app-graph-builder-5YX5TKKT.mjs → app-graph-builder-3SY5MBIK.mjs} +52 -33
- package/dist/lib/node-esm/app-graph-builder-3SY5MBIK.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-34EX6E5Q.mjs +18 -0
- package/dist/lib/node-esm/chunk-34EX6E5Q.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-HLPGKJ7N.mjs → chunk-3UEZLJ2V.mjs} +1 -1
- package/dist/lib/node-esm/{chunk-HLPGKJ7N.mjs.map → chunk-3UEZLJ2V.mjs.map} +2 -2
- package/dist/lib/node-esm/{chunk-TQYSF2GS.mjs → chunk-J6UXXZGJ.mjs} +17 -15
- package/dist/lib/node-esm/chunk-J6UXXZGJ.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-MNH6E6EB.mjs → chunk-OD574YIU.mjs} +44 -73
- package/dist/lib/node-esm/chunk-OD574YIU.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-GJE4WCUJ.mjs → chunk-UCOFKNKN.mjs} +8 -8
- package/dist/lib/node-esm/{chunk-GJE4WCUJ.mjs.map → chunk-UCOFKNKN.mjs.map} +3 -3
- package/dist/lib/node-esm/index.mjs +84 -30
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/{intent-resolver-N5TM3RTL.mjs → intent-resolver-E6MXTYAU.mjs} +12 -8
- package/dist/lib/node-esm/intent-resolver-E6MXTYAU.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-surface-FTKGQQD2.mjs → react-surface-7HA5EDWY.mjs} +29 -14
- package/dist/lib/node-esm/react-surface-7HA5EDWY.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-TGCCAH5D.mjs → settings-5IAY6BT4.mjs} +4 -4
- package/dist/lib/node-esm/settings-5IAY6BT4.mjs.map +7 -0
- package/dist/lib/node-esm/types/index.mjs +1 -1
- package/dist/types/src/AssistantPlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/ai-client.d.ts +2 -2
- 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/capabilities.d.ts +2 -2
- package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
- package/dist/types/src/capabilities/index.d.ts +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/BlueprintContainer.d.ts +9 -0
- package/dist/types/src/components/BlueprintContainer.d.ts.map +1 -0
- package/dist/types/src/components/BlueprintEditor/BlueprintEditor.d.ts +8 -3
- package/dist/types/src/components/BlueprintEditor/BlueprintEditor.d.ts.map +1 -1
- package/dist/types/src/components/BlueprintEditor/index.d.ts +1 -2
- package/dist/types/src/components/BlueprintEditor/index.d.ts.map +1 -1
- package/dist/types/src/components/TemplateContainer.d.ts +2 -2
- package/dist/types/src/components/TemplateContainer.d.ts.map +1 -1
- package/dist/types/src/components/Thread/Thread.stories.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 +1 -1
- package/dist/types/src/components/Thread/ThreadContainer.stories.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +4 -3
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/events.d.ts +4 -0
- package/dist/types/src/events.d.ts.map +1 -0
- package/dist/types/src/hooks/processor.d.ts +3 -3
- package/dist/types/src/hooks/useContextProvider.d.ts.map +1 -1
- package/dist/types/src/hooks/useMessageQueue.d.ts +8 -8
- package/dist/types/src/hooks/useMessageQueue.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +2 -0
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/parser/filter-generator.d.ts +1 -1
- package/dist/types/src/parser/filter-generator.d.ts.map +1 -1
- package/dist/types/src/queue-logger.d.ts +11 -0
- package/dist/types/src/queue-logger.d.ts.map +1 -0
- package/dist/types/src/stories/Query.stories.d.ts.map +1 -1
- package/dist/types/src/stories/Research.stories.d.ts +1 -1
- package/dist/types/src/stories/Research.stories.d.ts.map +1 -1
- package/dist/types/src/testing/test-blueprint.d.ts +4 -10
- package/dist/types/src/testing/test-blueprint.d.ts.map +1 -1
- package/dist/types/src/tools/openapi.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +15 -0
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/chat.d.ts +13 -10
- package/dist/types/src/types/chat.d.ts.map +1 -1
- package/dist/types/src/types/service.d.ts +88 -9
- package/dist/types/src/types/service.d.ts.map +1 -1
- package/dist/types/src/types/template.d.ts +3 -23
- package/dist/types/src/types/template.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +6 -6
- package/package.json +71 -68
- package/src/AssistantPlugin.tsx +30 -7
- package/src/capabilities/ai-client.ts +11 -6
- package/src/capabilities/app-graph-builder.ts +69 -54
- package/src/capabilities/capabilities.ts +3 -2
- package/src/capabilities/intent-resolver.ts +12 -5
- package/src/capabilities/react-surface.tsx +23 -19
- package/src/capabilities/settings.ts +2 -2
- package/src/components/AmbientDialog/AmbientDialog.stories.tsx +1 -0
- package/src/components/BlueprintContainer.tsx +148 -0
- package/src/components/BlueprintEditor/BlueprintEditor.stories.tsx +2 -2
- package/src/components/BlueprintEditor/BlueprintEditor.tsx +31 -21
- package/src/components/BlueprintEditor/index.ts +1 -3
- package/src/components/PromptSettings.tsx +1 -1
- package/src/components/TemplateContainer.tsx +5 -2
- package/src/components/TemplateEditor/TemplateEditor.stories.tsx +2 -2
- package/src/components/TemplateEditor/TemplateForm.stories.tsx +2 -2
- package/src/components/Thread/Thread.stories.tsx +19 -27
- package/src/components/Thread/ThreadContainer.stories.tsx +11 -12
- package/src/components/Thread/ThreadContainer.tsx +3 -4
- package/src/components/Thread/reducer.ts +3 -3
- package/src/components/index.ts +1 -1
- package/src/events.ts +11 -0
- package/src/hooks/processor.ts +4 -4
- package/src/hooks/useContextProvider.ts +13 -16
- package/src/hooks/useMessageQueue.ts +3 -2
- package/src/index.ts +2 -0
- package/src/parser/filter-generator.test.ts +1 -1
- package/src/parser/filter-generator.ts +1 -1
- package/src/queue-logger.ts +125 -0
- package/src/stories/Query.stories.tsx +28 -29
- package/src/stories/Research.stories.tsx +32 -46
- package/src/stories/test-data.ts +12 -12
- package/src/testing/test-blueprint.ts +14 -6
- package/src/testing/test-services.ts +6 -6
- package/src/tools/function.ts +2 -2
- package/src/tools/openapi.test.ts +7 -13
- package/src/tools/openapi.ts +5 -5
- package/src/translations.ts +19 -5
- package/src/types/chat.ts +3 -4
- package/src/types/service.ts +8 -4
- package/src/types/template.ts +11 -3
- package/dist/lib/browser/BlueprintEditor-DGV4KJDM.mjs +0 -45
- package/dist/lib/browser/BlueprintEditor-DGV4KJDM.mjs.map +0 -7
- package/dist/lib/browser/TemplateContainer-AKUYL4AV.mjs.map +0 -7
- package/dist/lib/browser/ai-client-COXVUC6V.mjs.map +0 -7
- package/dist/lib/browser/app-graph-builder-56OZ5RW4.mjs.map +0 -7
- package/dist/lib/browser/chunk-NBSPGIHL.mjs.map +0 -7
- package/dist/lib/browser/chunk-Q6XE3O3E.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-GWELYIX2.mjs.map +0 -7
- package/dist/lib/browser/react-surface-DGS34EON.mjs.map +0 -7
- package/dist/lib/browser/settings-BTFB7IQ6.mjs.map +0 -7
- package/dist/lib/node/BlueprintEditor-43VM3XPO.cjs +0 -72
- package/dist/lib/node/BlueprintEditor-43VM3XPO.cjs.map +0 -7
- package/dist/lib/node/TemplateContainer-CTG2MB4W.cjs.map +0 -7
- package/dist/lib/node/ai-client-R2CGEYZW.cjs.map +0 -7
- package/dist/lib/node/app-graph-builder-QLF353LH.cjs.map +0 -7
- package/dist/lib/node/chunk-PG7YNQ4R.cjs.map +0 -7
- package/dist/lib/node/chunk-UNVDZOLA.cjs.map +0 -7
- package/dist/lib/node/intent-resolver-U7663JU7.cjs.map +0 -7
- package/dist/lib/node/react-surface-QXZTILW6.cjs.map +0 -7
- package/dist/lib/node/settings-LBJMT6YB.cjs.map +0 -7
- package/dist/lib/node-esm/BlueprintEditor-CTARB2FO.mjs +0 -47
- package/dist/lib/node-esm/BlueprintEditor-CTARB2FO.mjs.map +0 -7
- package/dist/lib/node-esm/TemplateContainer-IVDQ4XQG.mjs.map +0 -7
- package/dist/lib/node-esm/ai-client-I5LXHMOZ.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-builder-5YX5TKKT.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-MNH6E6EB.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-TQYSF2GS.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-N5TM3RTL.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-FTKGQQD2.mjs.map +0 -7
- package/dist/lib/node-esm/settings-TGCCAH5D.mjs.map +0 -7
- /package/dist/lib/{node-esm/AssistantDialog-DONAO6SA.mjs.map → browser/AssistantDialog-MQOOR364.mjs.map} +0 -0
- /package/dist/lib/{node-esm/ChatContainer-FVIGCDIG.mjs.map → browser/ChatContainer-C2NEAS3A.mjs.map} +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/app-graph-builder.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Rx } from '@effect-rx/rx-react';\nimport { Option, pipe } from 'effect';\n\nimport {\n Capabilities,\n contributes,\n createIntent,\n LayoutAction,\n type PromiseIntentDispatcher,\n type PluginContext,\n} from '@dxos/app-framework';\nimport { Blueprint } from '@dxos/assistant';\nimport { Obj } from '@dxos/echo';\nimport { invariant } from '@dxos/invariant';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { PLANK_COMPANION_TYPE, ATTENDABLE_PATH_SEPARATOR } from '@dxos/plugin-deck/types';\nimport { createExtension, ROOT_ID } from '@dxos/plugin-graph';\nimport { getActiveSpace, rxFromQuery } from '@dxos/plugin-space';\nimport { SPACE_TYPE, SpaceAction } from '@dxos/plugin-space/types';\nimport {\n type Space,\n Filter,\n Query,\n type QueryResult,\n fullyQualifiedId,\n getSpace,\n isSpace,\n} from '@dxos/react-client/echo';\n\nimport { ASSISTANT_DIALOG, ASSISTANT_PLUGIN } from '../meta';\nimport { AIChatType, AssistantAction, CompanionTo, TemplateType } from '../types';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.AppGraphBuilder, [\n createExtension({\n id: `${ASSISTANT_PLUGIN}/assistant`,\n actions: (node) =>\n Rx.make((get) =>\n pipe(\n get(node),\n Option.flatMap((node) => (node.id === ROOT_ID ? Option.some(node) : Option.none())),\n Option.map(() => [\n {\n id: `${LayoutAction.UpdateDialog._tag}/assistant/open`,\n data: async () => {\n const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n const client = context.getCapability(ClientCapabilities.Client);\n\n const space = getActiveSpace(context) ?? client.spaces.default;\n const chat = await getOrCreateChat(dispatch, space);\n if (!chat) {\n return;\n }\n\n await dispatch(\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: ASSISTANT_DIALOG,\n options: {\n state: true,\n blockAlign: 'end',\n props: {\n chat,\n },\n },\n }),\n );\n },\n properties: {\n label: ['open assistant label', { ns: ASSISTANT_PLUGIN }],\n icon: 'ph--sparkle--regular',\n disposition: 'pin-end',\n position: 'hoist',\n keyBinding: {\n macos: 'shift+meta+k',\n windows: 'shift+ctrl+k',\n },\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n\n createExtension({\n id: `${ASSISTANT_PLUGIN}/object-chat-companion`,\n connector: (node) => {\n let query: QueryResult<AIChatType> | undefined;\n return Rx.make((get) => {\n const nodeOption = get(node);\n if (Option.isNone(nodeOption)) {\n return [];\n }\n\n const object = nodeOption.value.data;\n if (!Obj.isObject(object)) {\n return [];\n }\n\n const space = getSpace(object);\n if (!space) {\n return [];\n }\n\n if (!query) {\n query = space.db.query(Query.select(Filter.ids(object.id)).targetOf(CompanionTo).source());\n }\n\n const chat = get(rxFromQuery(query))[0];\n return [\n {\n id: [fullyQualifiedId(object), 'assistant-chat'].join(ATTENDABLE_PATH_SEPARATOR),\n type: PLANK_COMPANION_TYPE,\n data: chat ?? 'assistant-chat',\n properties: {\n label: ['assistant chat label', { ns: ASSISTANT_PLUGIN }],\n icon: 'ph--sparkle--regular',\n position: 'hoist',\n disposition: 'hidden',\n },\n },\n ];\n });\n },\n }),\n\n createExtension({\n id: `${ASSISTANT_PLUGIN}/blueprint-logs`,\n connector: (node) =>\n Rx.make((get) =>\n pipe(\n get(node),\n Option.flatMap((node) => (Obj.instanceOf(Blueprint, node.data) ? Option.some(node) : Option.none())),\n Option.map((node) => [\n {\n id: [node.id, 'logs'].join(ATTENDABLE_PATH_SEPARATOR),\n type: PLANK_COMPANION_TYPE,\n data: 'logs',\n properties: {\n label: ['blueprint logs label', { ns: ASSISTANT_PLUGIN }],\n icon: 'ph--clock-countdown--regular',\n disposition: 'hidden',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n\n createExtension({\n id: `${ASSISTANT_PLUGIN}/root`,\n connector: (node) => {\n let query: QueryResult<TemplateType> | undefined;\n return Rx.make((get) =>\n pipe(\n get(node),\n Option.flatMap((node) =>\n node.type === SPACE_TYPE && isSpace(node.data) ? Option.some(node.data) : Option.none(),\n ),\n Option.map((space) => {\n if (!query) {\n query = space.db.query(Query.type(TemplateType));\n }\n\n const templates = get(rxFromQuery(query));\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,\n },\n },\n ]\n : [];\n }),\n Option.getOrElse(() => []),\n ),\n );\n },\n }),\n\n createExtension({\n id: `${ASSISTANT_PLUGIN}/templates`,\n connector: (node) => {\n let query: QueryResult<TemplateType> | undefined;\n return Rx.make((get) =>\n pipe(\n get(node),\n Option.flatMap((node) =>\n node.id === `${ASSISTANT_PLUGIN}/templates` && isSpace(node.properties.space)\n ? Option.some(node.properties.space)\n : Option.none(),\n ),\n Option.map((space) => {\n if (!query) {\n query = space.db.query(Query.type(TemplateType));\n }\n return get(rxFromQuery(query))\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 ?? ['object placeholder', { ns: ASSISTANT_PLUGIN }],\n icon: 'ph--file-code--regular',\n },\n }));\n }),\n Option.getOrElse(() => []),\n ),\n );\n },\n }),\n ]);\n\n// TODO(burdon): Factor out.\nconst getOrCreateChat = async (dispatch: PromiseIntentDispatcher, space: Space): Promise<AIChatType | undefined> => {\n // TODO(wittjosiah): This should be possible with a single query.\n const { objects: allChats } = await space.db.query(Query.type(AIChatType)).run();\n const { objects: relatedChats } = await space.db.query(Query.type(AIChatType).sourceOf(CompanionTo).source()).run();\n const chats = allChats.filter((chat) => !relatedChats.includes(chat));\n // console.log('objects', JSON.stringify(objects, null, 2));\n if (chats.length > 0) {\n // TODO(burdon): Is this the most recent?\n return chats[chats.length - 1];\n }\n\n const { data } = await dispatch(createIntent(AssistantAction.CreateChat, { space }));\n invariant(Obj.instanceOf(AIChatType, data?.object));\n await dispatch(createIntent(SpaceAction.AddObject, { target: space, object: data.object }));\n return data.object;\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;AAIA,SAASA,UAAU;AACnB,SAASC,QAAQC,YAAY;AAE7B,SACEC,cACAC,aACAC,cACAC,oBAGK;AACP,SAASC,iBAAiB;AAC1B,SAASC,WAAW;AACpB,SAASC,iBAAiB;AAC1B,SAASC,0BAA0B;AACnC,SAASC,sBAAsBC,iCAAiC;AAChE,SAASC,iBAAiBC,eAAe;AACzC,SAASC,gBAAgBC,mBAAmB;AAC5C,SAASC,YAAYC,mBAAmB;AACxC,SAEEC,QACAC,OAEAC,kBACAC,UACAC,eACK;;AAKP,IAAA,4BAAe,CAACC,YACdC,YAAYC,aAAaC,iBAAiB;EACxCC,gBAAgB;IACdC,IAAI,GAAGC,gBAAAA;IACPC,SAAS,CAACC,SACRC,GAAGC,KAAK,CAACC,QACPC,KACED,IAAIH,IAAAA,GACJK,OAAOC,QAAQ,CAACN,UAAUA,MAAKH,OAAOU,UAAUF,OAAOG,KAAKR,KAAAA,IAAQK,OAAOI,KAAI,CAAA,GAC/EJ,OAAOK,IAAI,MAAM;MACf;QACEb,IAAI,GAAGc,aAAaC,aAAaC,IAAI;QACrCC,MAAM,YAAA;AACJ,gBAAM,EAAEC,iBAAiBC,SAAQ,IAAKxB,QAAQyB,cAAcvB,aAAawB,gBAAgB;AACzF,gBAAMC,SAAS3B,QAAQyB,cAAcG,mBAAmBC,MAAM;AAE9D,gBAAMC,QAAQC,eAAe/B,OAAAA,KAAY2B,OAAOK,OAAOC;AACvD,gBAAMC,OAAO,MAAMC,gBAAgBX,UAAUM,KAAAA;AAC7C,cAAI,CAACI,MAAM;AACT;UACF;AAEA,gBAAMV,SACJY,aAAajB,aAAaC,cAAc;YACtCiB,MAAM;YACNC,SAASC;YACTC,SAAS;cACPC,OAAO;cACPC,YAAY;cACZC,OAAO;gBACLT;cACF;YACF;UACF,CAAA,CAAA;QAEJ;QACAU,YAAY;UACVC,OAAO;YAAC;YAAwB;cAAEC,IAAIxC;YAAiB;;UACvDyC,MAAM;UACNC,aAAa;UACbC,UAAU;UACVC,YAAY;YACVC,OAAO;YACPC,SAAS;UACX;QACF;MACF;KACD,GACDvC,OAAOwC,UAAU,MAAM,CAAA,CAAE,CAAA,CAAA;EAGjC,CAAA;EAEAjD,gBAAgB;IACdC,IAAI,GAAGC,gBAAAA;IACPgD,WAAW,CAAC9C,SAAAA;AACV,UAAI+C;AACJ,aAAO9C,GAAGC,KAAK,CAACC,QAAAA;AACd,cAAM6C,aAAa7C,IAAIH,IAAAA;AACvB,YAAIK,OAAO4C,OAAOD,UAAAA,GAAa;AAC7B,iBAAO,CAAA;QACT;AAEA,cAAME,SAASF,WAAWG,MAAMrC;AAChC,YAAI,CAACsC,IAAIC,SAASH,MAAAA,GAAS;AACzB,iBAAO,CAAA;QACT;AAEA,cAAM5B,QAAQgC,SAASJ,MAAAA;AACvB,YAAI,CAAC5B,OAAO;AACV,iBAAO,CAAA;QACT;AAEA,YAAI,CAACyB,OAAO;AACVA,kBAAQzB,MAAMiC,GAAGR,MAAMS,MAAMC,OAAOC,OAAOC,IAAIT,OAAOrD,EAAE,CAAA,EAAG+D,SAASC,WAAAA,EAAaC,OAAM,CAAA;QACzF;AAEA,cAAMpC,OAAOvB,IAAI4D,YAAYhB,KAAAA,CAAAA,EAAQ,CAAA;AACrC,eAAO;UACL;YACElD,IAAI;cAACmE,iBAAiBd,MAAAA;cAAS;cAAkBe,KAAKC,yBAAAA;YACtDC,MAAMC;YACNtD,MAAMY,QAAQ;YACdU,YAAY;cACVC,OAAO;gBAAC;gBAAwB;kBAAEC,IAAIxC;gBAAiB;;cACvDyC,MAAM;cACNE,UAAU;cACVD,aAAa;YACf;UACF;;MAEJ,CAAA;IACF;EACF,CAAA;EAEA5C,gBAAgB;IACdC,IAAI,GAAGC,gBAAAA;IACPgD,WAAW,CAAC9C,SACVC,GAAGC,KAAK,CAACC,QACPC,KACED,IAAIH,IAAAA,GACJK,OAAOC,QAAQ,CAACN,UAAUoD,IAAIiB,WAAWC,WAAWtE,MAAKc,IAAI,IAAIT,OAAOG,KAAKR,KAAAA,IAAQK,OAAOI,KAAI,CAAA,GAChGJ,OAAOK,IAAI,CAACV,UAAS;MACnB;QACEH,IAAI;UAACG,MAAKH;UAAI;UAAQoE,KAAKC,yBAAAA;QAC3BC,MAAMC;QACNtD,MAAM;QACNsB,YAAY;UACVC,OAAO;YAAC;YAAwB;cAAEC,IAAIxC;YAAiB;;UACvDyC,MAAM;UACNC,aAAa;QACf;MACF;KACD,GACDnC,OAAOwC,UAAU,MAAM,CAAA,CAAE,CAAA,CAAA;EAGjC,CAAA;EAEAjD,gBAAgB;IACdC,IAAI,GAAGC,gBAAAA;IACPgD,WAAW,CAAC9C,SAAAA;AACV,UAAI+C;AACJ,aAAO9C,GAAGC,KAAK,CAACC,QACdC,KACED,IAAIH,IAAAA,GACJK,OAAOC,QAAQ,CAACN,UACdA,MAAKmE,SAASI,cAAcC,QAAQxE,MAAKc,IAAI,IAAIT,OAAOG,KAAKR,MAAKc,IAAI,IAAIT,OAAOI,KAAI,CAAA,GAEvFJ,OAAOK,IAAI,CAACY,UAAAA;AACV,YAAI,CAACyB,OAAO;AACVA,kBAAQzB,MAAMiC,GAAGR,MAAMS,MAAMW,KAAKM,YAAAA,CAAAA;QACpC;AAEA,cAAMC,YAAYvE,IAAI4D,YAAYhB,KAAAA,CAAAA;AAClC,eAAO2B,UAAUC,SAAS,IACtB;UACE;YACE9E,IAAI,GAAGC,gBAAAA;YACPqE,MAAM,GAAGrE,gBAAAA;YACTgB,MAAM;YACNsB,YAAY;cACVC,OAAO;gBAAC;gBAAmB;kBAAEC,IAAIxC;gBAAiB;;cAClDyC,MAAM;cACNjB;YACF;UACF;YAEF,CAAA;MACN,CAAA,GACAjB,OAAOwC,UAAU,MAAM,CAAA,CAAE,CAAA,CAAA;IAG/B;EACF,CAAA;EAEAjD,gBAAgB;IACdC,IAAI,GAAGC,gBAAAA;IACPgD,WAAW,CAAC9C,SAAAA;AACV,UAAI+C;AACJ,aAAO9C,GAAGC,KAAK,CAACC,QACdC,KACED,IAAIH,IAAAA,GACJK,OAAOC,QAAQ,CAACN,UACdA,MAAKH,OAAO,GAAGC,gBAAAA,gBAAgC0E,QAAQxE,MAAKoC,WAAWd,KAAK,IACxEjB,OAAOG,KAAKR,MAAKoC,WAAWd,KAAK,IACjCjB,OAAOI,KAAI,CAAA,GAEjBJ,OAAOK,IAAI,CAACY,UAAAA;AACV,YAAI,CAACyB,OAAO;AACVA,kBAAQzB,MAAMiC,GAAGR,MAAMS,MAAMW,KAAKM,YAAAA,CAAAA;QACpC;AACA,eAAOtE,IAAI4D,YAAYhB,KAAAA,CAAAA,EACpB6B,SAAS,CAACC,GAAGC,MAAAA;AACZ,gBAAMC,QAAQF,EAAEG,QAAQ;AACxB,gBAAMC,QAAQH,EAAEE,QAAQ;AACxB,iBAAOD,MAAMG,cAAcD,KAAAA;QAC7B,CAAA,EACCvE,IAAI,CAACyE,cAAc;UAClBtF,IAAImE,iBAAiBmB,QAAAA;UACrBhB,MAAM,GAAGrE,gBAAAA;UACTgB,MAAMqE;UACN/C,YAAY;YACVC,OAAO8C,SAASH,QAAQ;cAAC;cAAsB;gBAAE1C,IAAIxC;cAAiB;;YACtEyC,MAAM;UACR;QACF,EAAA;MACJ,CAAA,GACAlC,OAAOwC,UAAU,MAAM,CAAA,CAAE,CAAA,CAAA;IAG/B;EACF,CAAA;CACD;AAGH,IAAMlB,kBAAkB,OAAOX,UAAmCM,UAAAA;AAEhE,QAAM,EAAE8D,SAASC,SAAQ,IAAK,MAAM/D,MAAMiC,GAAGR,MAAMS,MAAMW,KAAKmB,UAAAA,CAAAA,EAAaC,IAAG;AAC9E,QAAM,EAAEH,SAASI,aAAY,IAAK,MAAMlE,MAAMiC,GAAGR,MAAMS,MAAMW,KAAKmB,UAAAA,EAAYG,SAAS5B,WAAAA,EAAaC,OAAM,CAAA,EAAIyB,IAAG;AACjH,QAAMG,QAAQL,SAASM,OAAO,CAACjE,SAAS,CAAC8D,aAAaI,SAASlE,IAAAA,CAAAA;AAE/D,MAAIgE,MAAMf,SAAS,GAAG;AAEpB,WAAOe,MAAMA,MAAMf,SAAS,CAAA;EAC9B;AAEA,QAAM,EAAE7D,KAAI,IAAK,MAAME,SAASY,aAAaiE,gBAAgBC,YAAY;IAAExE;EAAM,CAAA,CAAA;AACjFyE,YAAU3C,IAAIiB,WAAWiB,YAAYxE,MAAMoC,MAAAA,GAAAA,QAAAA;;;;;;;;;AAC3C,QAAMlC,SAASY,aAAaoE,YAAYC,WAAW;IAAEC,QAAQ5E;IAAO4B,QAAQpC,KAAKoC;EAAO,CAAA,CAAA;AACxF,SAAOpC,KAAKoC;AACd;",
|
|
6
|
+
"names": ["Rx", "Option", "pipe", "Capabilities", "contributes", "createIntent", "LayoutAction", "Blueprint", "Obj", "invariant", "ClientCapabilities", "PLANK_COMPANION_TYPE", "ATTENDABLE_PATH_SEPARATOR", "createExtension", "ROOT_ID", "getActiveSpace", "rxFromQuery", "SPACE_TYPE", "SpaceAction", "Filter", "Query", "fullyQualifiedId", "getSpace", "isSpace", "context", "contributes", "Capabilities", "AppGraphBuilder", "createExtension", "id", "ASSISTANT_PLUGIN", "actions", "node", "Rx", "make", "get", "pipe", "Option", "flatMap", "ROOT_ID", "some", "none", "map", "LayoutAction", "UpdateDialog", "_tag", "data", "dispatchPromise", "dispatch", "getCapability", "IntentDispatcher", "client", "ClientCapabilities", "Client", "space", "getActiveSpace", "spaces", "default", "chat", "getOrCreateChat", "createIntent", "part", "subject", "ASSISTANT_DIALOG", "options", "state", "blockAlign", "props", "properties", "label", "ns", "icon", "disposition", "position", "keyBinding", "macos", "windows", "getOrElse", "connector", "query", "nodeOption", "isNone", "object", "value", "Obj", "isObject", "getSpace", "db", "Query", "select", "Filter", "ids", "targetOf", "CompanionTo", "source", "rxFromQuery", "fullyQualifiedId", "join", "ATTENDABLE_PATH_SEPARATOR", "type", "PLANK_COMPANION_TYPE", "instanceOf", "Blueprint", "SPACE_TYPE", "isSpace", "TemplateType", "templates", "length", "toSorted", "a", "b", "nameA", "name", "nameB", "localeCompare", "template", "objects", "allChats", "AIChatType", "run", "relatedChats", "sourceOf", "chats", "filter", "includes", "AssistantAction", "CreateChat", "invariant", "SpaceAction", "AddObject", "target"]
|
|
7
|
+
}
|
|
@@ -4,13 +4,12 @@ import {
|
|
|
4
4
|
|
|
5
5
|
// packages/plugins/plugin-assistant/src/types/chat.ts
|
|
6
6
|
import { Schema } from "effect";
|
|
7
|
+
import { Queue } from "@dxos/client/echo";
|
|
7
8
|
import { Type } from "@dxos/echo";
|
|
8
|
-
import { Expando, Ref } from "@dxos/echo-schema";
|
|
9
9
|
var AIChatType = Schema.Struct({
|
|
10
10
|
id: Type.ObjectId,
|
|
11
11
|
name: Schema.optional(Schema.String),
|
|
12
|
-
|
|
13
|
-
queue: Ref(Expando)
|
|
12
|
+
queue: Type.Ref(Queue)
|
|
14
13
|
}).pipe(Type.Obj({
|
|
15
14
|
typename: "dxos.org/type/AIChat",
|
|
16
15
|
version: "0.2.0"
|
|
@@ -21,13 +20,14 @@ var CompanionTo = Schema.Struct({
|
|
|
21
20
|
typename: "dxos.org/relation/CompanionTo",
|
|
22
21
|
version: "0.1.0",
|
|
23
22
|
source: AIChatType,
|
|
24
|
-
target: Expando
|
|
23
|
+
target: Type.Expando
|
|
25
24
|
}));
|
|
26
25
|
|
|
27
26
|
// packages/plugins/plugin-assistant/src/types/service.ts
|
|
28
27
|
import { Schema as Schema2 } from "effect";
|
|
29
28
|
import { ComputeGraph } from "@dxos/conductor";
|
|
30
|
-
import {
|
|
29
|
+
import { Type as Type2 } from "@dxos/echo";
|
|
30
|
+
import { TypedObject } from "@dxos/echo-schema";
|
|
31
31
|
import { FunctionType } from "@dxos/functions";
|
|
32
32
|
var ApiAuthorizationKey = Schema2.Struct({
|
|
33
33
|
type: Schema2.Literal("api-key"),
|
|
@@ -49,11 +49,11 @@ var ApiAuthorizationOauth = Schema2.Struct({
|
|
|
49
49
|
var ApiAuthorization = Schema2.Union(ApiAuthorizationKey, ApiAuthorizationOauth);
|
|
50
50
|
var ServiceInterfaceFunction = Schema2.Struct({
|
|
51
51
|
kind: Schema2.Literal("function"),
|
|
52
|
-
fn:
|
|
52
|
+
fn: Type2.Ref(FunctionType)
|
|
53
53
|
});
|
|
54
54
|
var ServiceInterfaceWorkflow = Schema2.Struct({
|
|
55
55
|
kind: Schema2.Literal("workflow"),
|
|
56
|
-
workflow:
|
|
56
|
+
workflow: Type2.Ref(ComputeGraph)
|
|
57
57
|
});
|
|
58
58
|
var ServiceInterfaceApi = Schema2.Struct({
|
|
59
59
|
kind: Schema2.Literal("api"),
|
|
@@ -100,7 +100,8 @@ var categoryIcons = {
|
|
|
100
100
|
|
|
101
101
|
// packages/plugins/plugin-assistant/src/types/template.ts
|
|
102
102
|
import { Schema as Schema3 } from "effect";
|
|
103
|
-
import {
|
|
103
|
+
import { Type as Type3 } from "@dxos/echo";
|
|
104
|
+
import { LabelAnnotation } from "@dxos/echo-schema";
|
|
104
105
|
var TemplateInputType = /* @__PURE__ */ function(TemplateInputType2) {
|
|
105
106
|
TemplateInputType2[TemplateInputType2["VALUE"] = 0] = "VALUE";
|
|
106
107
|
TemplateInputType2[TemplateInputType2["PASS_THROUGH"] = 1] = "PASS_THROUGH";
|
|
@@ -134,17 +135,18 @@ var TemplateKindSchema = Schema3.Union(Schema3.Struct({
|
|
|
134
135
|
}), Schema3.Struct({
|
|
135
136
|
include: Schema3.Literal("manual")
|
|
136
137
|
}));
|
|
137
|
-
var TemplateType =
|
|
138
|
-
typename: "dxos.org/type/Template",
|
|
139
|
-
version: "0.1.0"
|
|
140
|
-
})({
|
|
138
|
+
var TemplateType = Schema3.Struct({
|
|
141
139
|
name: Schema3.optional(Schema3.String),
|
|
142
140
|
kind: Schema3.mutable(TemplateKindSchema),
|
|
143
141
|
source: Schema3.String,
|
|
144
142
|
inputs: Schema3.optional(Schema3.mutable(Schema3.Array(TemplateInputSchema))),
|
|
145
143
|
command: Schema3.optional(Schema3.String)
|
|
146
|
-
})
|
|
147
|
-
|
|
144
|
+
}).pipe(LabelAnnotation.set([
|
|
145
|
+
"name"
|
|
146
|
+
]), Type3.Obj({
|
|
147
|
+
typename: "dxos.org/type/Template",
|
|
148
|
+
version: "0.1.0"
|
|
149
|
+
}));
|
|
148
150
|
|
|
149
151
|
// packages/plugins/plugin-assistant/src/types/types.ts
|
|
150
152
|
import { Schema as Schema4 } from "effect";
|
|
@@ -203,4 +205,4 @@ export {
|
|
|
203
205
|
AssistantSettingsSchema,
|
|
204
206
|
AssistantAction
|
|
205
207
|
};
|
|
206
|
-
//# sourceMappingURL=chunk-
|
|
208
|
+
//# sourceMappingURL=chunk-AAOKC2JN.mjs.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 { Schema } from 'effect';\n\nimport { Queue } from '@dxos/client/echo';\nimport { Type } from '@dxos/echo';\n\nexport const AIChatType = Schema.Struct({\n id: Type.ObjectId,\n name: Schema.optional(Schema.String),\n queue: Type.Ref(Queue),\n}).pipe(\n Type.Obj({\n typename: 'dxos.org/type/AIChat',\n version: '0.2.0',\n }),\n);\nexport interface AIChatType extends Schema.Schema.Type<typeof AIChatType> {}\n\nexport const CompanionTo = Schema.Struct({\n id: Type.ObjectId,\n}).pipe(\n Type.Relation({\n typename: 'dxos.org/relation/CompanionTo',\n version: '0.1.0',\n source: AIChatType,\n target: Type.Expando,\n }),\n);\nexport interface CompanionTo extends Schema.Schema.Type<typeof CompanionTo> {}\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { ComputeGraph } from '@dxos/conductor';\nimport { Type } from '@dxos/echo';\nimport { TypedObject } from '@dxos/echo-schema';\nimport { FunctionType } from '@dxos/functions';\n\nconst ApiAuthorizationKey = Schema.Struct({\n type: Schema.Literal('api-key'),\n key: Schema.String,\n placement: Schema.Union(\n Schema.Struct({\n type: Schema.Literal('authorization-header'),\n }),\n Schema.Struct({\n type: Schema.Literal('query'),\n name: Schema.String,\n }),\n ),\n});\n\nconst ApiAuthorizationOauth = Schema.Struct({\n type: Schema.Literal('oauth'),\n clientId: Schema.String,\n clientSecret: Schema.String,\n tokenUrl: Schema.String,\n grantType: Schema.String,\n});\n\nexport const ApiAuthorization = Schema.Union(ApiAuthorizationKey, ApiAuthorizationOauth);\nexport type ApiAuthorization = Schema.Schema.Type<typeof ApiAuthorization>;\n\nconst ServiceInterfaceFunction = Schema.Struct({\n kind: Schema.Literal('function'),\n fn: Type.Ref(FunctionType),\n});\n\nconst ServiceInterfaceWorkflow = Schema.Struct({\n kind: Schema.Literal('workflow'),\n workflow: Type.Ref(ComputeGraph),\n});\n\nconst ServiceInterfaceApi = Schema.Struct({\n kind: Schema.Literal('api'),\n\n /**\n * URL to fetch the openapi schema.\n */\n schemaUrl: Schema.optional(Schema.String),\n\n /**\n * Inlined openapi schema.\n */\n schema: Schema.optional(Schema.Any),\n\n /**\n * Authorization configuration if required.\n */\n authorization: Schema.optional(ApiAuthorization),\n});\n\nconst ServiceInterface = Schema.Union(ServiceInterfaceFunction, ServiceInterfaceWorkflow, ServiceInterfaceApi);\nexport type ServiceInterface = Schema.Schema.Type<typeof ServiceInterface>;\n\nexport class ServiceType extends TypedObject({\n typename: 'dxos.org/type/ServiceType',\n version: '0.1.0',\n})({\n serviceId: Schema.String,\n name: Schema.optional(Schema.String),\n description: Schema.optional(Schema.String),\n category: Schema.optional(Schema.String),\n enabled: Schema.optional(Schema.Boolean),\n\n /**\n * Entries exposed: functions, workflows, and APIs.\n */\n interfaces: Schema.optional(Schema.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 { Schema } from 'effect';\n\nimport { Type } from '@dxos/echo';\nimport { LabelAnnotation } from '@dxos/echo-schema';\n\n// TODO(burdon): Change to Schema.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 = Schema.mutable(\n Schema.Struct({\n name: Schema.String,\n type: Schema.optional(Schema.Enums(TemplateInputType)),\n value: Schema.optional(Schema.String),\n }),\n);\n\nexport type TemplateInput = Schema.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 = Schema.Union(\n Schema.Struct({\n include: Schema.Literal('always'),\n }),\n Schema.Struct({\n include: Schema.Literal('schema-matching'),\n typename: Schema.String,\n }),\n Schema.Struct({\n include: Schema.Literal('automatically'),\n description: Schema.String,\n }),\n Schema.Struct({\n include: Schema.Literal('manual'),\n }),\n);\n\nexport type TemplateKindType = Schema.Schema.Type<typeof TemplateKindSchema>;\nexport const TemplateType = Schema.Struct({\n name: Schema.optional(Schema.String),\n kind: Schema.mutable(TemplateKindSchema),\n source: Schema.String,\n inputs: Schema.optional(Schema.mutable(Schema.Array(TemplateInputSchema))),\n command: Schema.optional(Schema.String),\n}).pipe(\n LabelAnnotation.set(['name']),\n Type.Obj({\n typename: 'dxos.org/type/Template',\n version: '0.1.0',\n }),\n);\nexport interface TemplateType extends Schema.Schema.Type<typeof TemplateType> {}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { Blueprint } from '@dxos/assistant';\nimport { SpaceSchema } from '@dxos/react-client/echo';\n\nimport { AIChatType } from './chat';\nimport { ASSISTANT_PLUGIN } from '../meta';\n\nexport namespace AssistantAction {\n const ASSISTANT_ACTION = `${ASSISTANT_PLUGIN}/action`;\n\n export class CreateChat extends Schema.TaggedClass<CreateChat>()(`${ASSISTANT_ACTION}/create-chat`, {\n input: Schema.Struct({\n space: SpaceSchema,\n name: Schema.optional(Schema.String),\n }),\n output: Schema.Struct({\n object: AIChatType,\n }),\n }) {}\n\n export class CreateBlueprint extends Schema.TaggedClass<CreateBlueprint>()(`${ASSISTANT_ACTION}/create-blueprint`, {\n input: Schema.Struct({\n name: Schema.optional(Schema.String),\n }),\n output: Schema.Struct({\n object: Blueprint,\n }),\n }) {}\n}\n\nexport const LLM_PROVIDERS = ['edge', 'ollama', 'lmstudio'] as const;\n\nexport const AssistantSettingsSchema = Schema.mutable(\n Schema.Struct({\n llmProvider: Schema.optional(Schema.Literal(...LLM_PROVIDERS)),\n edgeModel: Schema.optional(Schema.String),\n ollamaModel: Schema.optional(Schema.String),\n lmstudioModel: Schema.optional(Schema.String),\n customPrompts: Schema.optional(Schema.Boolean),\n }),\n);\n\nexport type AssistantSettingsProps = Schema.Schema.Type<typeof AssistantSettingsSchema>;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Schema", "Queue", "Type", "AIChatType", "Schema", "Struct", "id", "Type", "ObjectId", "name", "optional", "String", "queue", "Ref", "Queue", "pipe", "Obj", "typename", "version", "CompanionTo", "Relation", "source", "target", "Expando", "Schema", "ComputeGraph", "Type", "TypedObject", "FunctionType", "ApiAuthorizationKey", "Schema", "Struct", "type", "Literal", "key", "String", "placement", "Union", "name", "ApiAuthorizationOauth", "clientId", "clientSecret", "tokenUrl", "grantType", "ApiAuthorization", "ServiceInterfaceFunction", "kind", "fn", "Type", "Ref", "FunctionType", "ServiceInterfaceWorkflow", "workflow", "ComputeGraph", "ServiceInterfaceApi", "schemaUrl", "optional", "schema", "Any", "authorization", "ServiceInterface", "ServiceType", "TypedObject", "typename", "version", "serviceId", "description", "category", "enabled", "Boolean", "interfaces", "Array", "categoryIcons", "finance", "health", "geolocation", "education", "entertainment", "shopping", "travel", "utilities", "weather", "Schema", "Type", "LabelAnnotation", "TemplateInputType", "TemplateInputSchema", "Schema", "mutable", "Struct", "name", "String", "type", "optional", "Enums", "value", "TemplateKinds", "TemplateKindSchema", "Union", "include", "Literal", "typename", "description", "TemplateType", "kind", "source", "inputs", "Array", "command", "pipe", "LabelAnnotation", "set", "Type", "Obj", "version", "Schema", "Blueprint", "SpaceSchema", "AssistantAction", "ASSISTANT_ACTION", "ASSISTANT_PLUGIN", "CreateChat", "Schema", "TaggedClass", "input", "Struct", "space", "SpaceSchema", "name", "optional", "String", "output", "object", "AIChatType", "CreateBlueprint", "Blueprint", "LLM_PROVIDERS", "AssistantSettingsSchema", "mutable", "llmProvider", "Literal", "edgeModel", "ollamaModel", "lmstudioModel", "customPrompts", "Boolean"]
|
|
7
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
LLM_PROVIDERS,
|
|
3
3
|
TemplateKinds
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-AAOKC2JN.mjs";
|
|
5
5
|
import {
|
|
6
6
|
ASSISTANT_PLUGIN
|
|
7
7
|
} from "./chunk-XOZ7YMO3.mjs";
|
|
@@ -116,7 +116,7 @@ var PromptSettings = ({ template }) => {
|
|
|
116
116
|
template.kind.include
|
|
117
117
|
]);
|
|
118
118
|
return /* @__PURE__ */ React2.createElement("div", {
|
|
119
|
-
className: "
|
|
119
|
+
className: "flex flex-col gap-4"
|
|
120
120
|
}, /* @__PURE__ */ React2.createElement("h2", null, t("prompt rules label")), /* @__PURE__ */ React2.createElement(Toolbar.Root, null, /* @__PURE__ */ React2.createElement(Select2.Root, {
|
|
121
121
|
value: template.kind.include,
|
|
122
122
|
onValueChange: handleKindChange
|
|
@@ -141,17 +141,17 @@ var PromptSettings = ({ template }) => {
|
|
|
141
141
|
|
|
142
142
|
// packages/plugins/plugin-assistant/src/components/index.ts
|
|
143
143
|
import { lazy } from "react";
|
|
144
|
-
var AssistantDialog = lazy(() => import("./AssistantDialog-
|
|
145
|
-
var
|
|
146
|
-
var ChatContainer = lazy(() => import("./ChatContainer-
|
|
147
|
-
var TemplateContainer = lazy(() => import("./TemplateContainer-
|
|
144
|
+
var AssistantDialog = lazy(() => import("./AssistantDialog-MQOOR364.mjs"));
|
|
145
|
+
var BlueprintContainer = lazy(() => import("./BlueprintContainer-AT5Y7EXG.mjs"));
|
|
146
|
+
var ChatContainer = lazy(() => import("./ChatContainer-C2NEAS3A.mjs"));
|
|
147
|
+
var TemplateContainer = lazy(() => import("./TemplateContainer-QQHVOTSI.mjs"));
|
|
148
148
|
|
|
149
149
|
export {
|
|
150
150
|
AssistantSettings,
|
|
151
151
|
PromptSettings,
|
|
152
152
|
AssistantDialog,
|
|
153
|
-
|
|
153
|
+
BlueprintContainer,
|
|
154
154
|
ChatContainer,
|
|
155
155
|
TemplateContainer
|
|
156
156
|
};
|
|
157
|
-
//# sourceMappingURL=chunk-
|
|
157
|
+
//# sourceMappingURL=chunk-BI6AHRNJ.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/AssistantSettings/AssistantSettings.tsx", "../../../src/components/PromptSettings.tsx", "../../../src/components/index.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\nimport { DEFAULT_EDGE_MODELS, DEFAULT_OLLAMA_MODELS } from '@dxos/ai';\nimport { Input, Select, useTranslation } from '@dxos/react-ui';\nimport { DeprecatedFormContainer, DeprecatedFormInput } from '@dxos/react-ui-form';\n\nimport { ASSISTANT_PLUGIN } from '../../meta';\nimport { LLM_PROVIDERS, type AssistantSettingsProps } from '../../types';\n\n// TODO(burdon): Factor out default Selector.\nconst DEFAULT_VALUE = '__default';\n\nconst LLM_PROVIDER_LABELS = {\n edge: 'DXOS',\n ollama: 'Ollama',\n lmstudio: 'LM Studio',\n} as const;\n\nexport const AssistantSettings = ({ settings }: { settings: AssistantSettingsProps }) => {\n const { t } = useTranslation(ASSISTANT_PLUGIN);\n\n return (\n <DeprecatedFormContainer>\n <DeprecatedFormInput label={t('settings custom prompts label')}>\n <Input.Switch\n checked={!!settings.customPrompts}\n onCheckedChange={(checked) => (settings.customPrompts = checked)}\n />\n </DeprecatedFormInput>\n\n <DeprecatedFormInput label={t('settings llm provider label')}>\n <Select.Root\n value={settings.llmProvider ?? 'edge'}\n onValueChange={(value) => {\n settings.llmProvider = value === DEFAULT_VALUE ? undefined : (value as any);\n }}\n >\n <Select.TriggerButton placeholder={t('settings llm provider label')} />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n <Select.Option value={DEFAULT_VALUE}>{t('settings default label')}</Select.Option>\n {LLM_PROVIDERS.map((model) => (\n <Select.Option key={model} value={model}>\n {LLM_PROVIDER_LABELS[model]}\n </Select.Option>\n ))}\n </Select.Viewport>\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </DeprecatedFormInput>\n\n <DeprecatedFormInput label={t('settings edge llm model label')}>\n <Select.Root\n value={settings.edgeModel ?? DEFAULT_VALUE}\n onValueChange={(value) => {\n settings.edgeModel = value === DEFAULT_VALUE ? undefined : value;\n }}\n >\n <Select.TriggerButton placeholder={t('settings default llm model label')} />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n <Select.Option value={DEFAULT_VALUE}>{t('settings default label')}</Select.Option>\n {DEFAULT_EDGE_MODELS.map((model) => (\n <Select.Option key={model} value={model}>\n {model}\n </Select.Option>\n ))}\n </Select.Viewport>\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </DeprecatedFormInput>\n\n <DeprecatedFormInput label={t('settings ollama llm model label')}>\n <Select.Root\n value={settings.ollamaModel ?? DEFAULT_VALUE}\n onValueChange={(value) => {\n settings.ollamaModel = value === DEFAULT_VALUE ? undefined : value;\n }}\n >\n <Select.TriggerButton placeholder={t('settings default llm model label')} />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n <Select.Option value={DEFAULT_VALUE}>{t('settings default label')}</Select.Option>\n {DEFAULT_OLLAMA_MODELS.map((model) => (\n <Select.Option key={model} value={model}>\n {model}\n </Select.Option>\n ))}\n </Select.Viewport>\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </DeprecatedFormInput>\n </DeprecatedFormContainer>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Match, type Schema } from 'effect';\nimport React, { type ChangeEvent, useCallback } from 'react';\n\nimport { debounce } from '@dxos/async';\nimport { Input, Select, Toolbar, useTranslation } from '@dxos/react-ui';\n\nimport { ASSISTANT_PLUGIN } from '../meta';\nimport { TemplateKinds, type TemplateType, type TemplateKindSchema } from '../types';\n\nexport const PromptSettings = ({ template }: { template: TemplateType }) => {\n const { t } = useTranslation(ASSISTANT_PLUGIN);\n\n const handleKindChange = useCallback(\n (value: string) => {\n const kind = Match.type<string>().pipe(\n Match.withReturnType<Schema.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 <div className='
|
|
5
|
-
"mappings": "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
|
|
6
|
-
"names": ["React", "DEFAULT_EDGE_MODELS", "DEFAULT_OLLAMA_MODELS", "Input", "Select", "useTranslation", "DeprecatedFormContainer", "DeprecatedFormInput", "DEFAULT_VALUE", "LLM_PROVIDER_LABELS", "edge", "ollama", "lmstudio", "AssistantSettings", "settings", "t", "useTranslation", "ASSISTANT_PLUGIN", "DeprecatedFormContainer", "DeprecatedFormInput", "label", "Input", "Switch", "checked", "customPrompts", "onCheckedChange", "Select", "Root", "value", "llmProvider", "onValueChange", "undefined", "TriggerButton", "placeholder", "Portal", "Content", "Viewport", "Option", "LLM_PROVIDERS", "map", "model", "key", "edgeModel", "DEFAULT_EDGE_MODELS", "ollamaModel", "DEFAULT_OLLAMA_MODELS", "Match", "React", "useCallback", "debounce", "Input", "Select", "Toolbar", "useTranslation", "PromptSettings", "template", "t", "useTranslation", "ASSISTANT_PLUGIN", "handleKindChange", "useCallback", "value", "kind", "Match", "type", "pipe", "withReturnType", "when", "include", "typename", "description", "orElse", "handleTypenameChange", "debounce", "event", "target", "handleDescriptionChange", "React", "div", "className", "h2", "Toolbar", "Root", "Select", "onValueChange", "Button", "asChild", "TriggerButton", "Portal", "Content", "Viewport", "TemplateKinds", "map", "Option", "key", "Input", "TextInput", "placeholder", "defaultValue", "onChange", "lazy", "AssistantDialog", "lazy", "
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\nimport { DEFAULT_EDGE_MODELS, DEFAULT_OLLAMA_MODELS } from '@dxos/ai';\nimport { Input, Select, useTranslation } from '@dxos/react-ui';\nimport { DeprecatedFormContainer, DeprecatedFormInput } from '@dxos/react-ui-form';\n\nimport { ASSISTANT_PLUGIN } from '../../meta';\nimport { LLM_PROVIDERS, type AssistantSettingsProps } from '../../types';\n\n// TODO(burdon): Factor out default Selector.\nconst DEFAULT_VALUE = '__default';\n\nconst LLM_PROVIDER_LABELS = {\n edge: 'DXOS',\n ollama: 'Ollama',\n lmstudio: 'LM Studio',\n} as const;\n\nexport const AssistantSettings = ({ settings }: { settings: AssistantSettingsProps }) => {\n const { t } = useTranslation(ASSISTANT_PLUGIN);\n\n return (\n <DeprecatedFormContainer>\n <DeprecatedFormInput label={t('settings custom prompts label')}>\n <Input.Switch\n checked={!!settings.customPrompts}\n onCheckedChange={(checked) => (settings.customPrompts = checked)}\n />\n </DeprecatedFormInput>\n\n <DeprecatedFormInput label={t('settings llm provider label')}>\n <Select.Root\n value={settings.llmProvider ?? 'edge'}\n onValueChange={(value) => {\n settings.llmProvider = value === DEFAULT_VALUE ? undefined : (value as any);\n }}\n >\n <Select.TriggerButton placeholder={t('settings llm provider label')} />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n <Select.Option value={DEFAULT_VALUE}>{t('settings default label')}</Select.Option>\n {LLM_PROVIDERS.map((model) => (\n <Select.Option key={model} value={model}>\n {LLM_PROVIDER_LABELS[model]}\n </Select.Option>\n ))}\n </Select.Viewport>\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </DeprecatedFormInput>\n\n <DeprecatedFormInput label={t('settings edge llm model label')}>\n <Select.Root\n value={settings.edgeModel ?? DEFAULT_VALUE}\n onValueChange={(value) => {\n settings.edgeModel = value === DEFAULT_VALUE ? undefined : value;\n }}\n >\n <Select.TriggerButton placeholder={t('settings default llm model label')} />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n <Select.Option value={DEFAULT_VALUE}>{t('settings default label')}</Select.Option>\n {DEFAULT_EDGE_MODELS.map((model) => (\n <Select.Option key={model} value={model}>\n {model}\n </Select.Option>\n ))}\n </Select.Viewport>\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </DeprecatedFormInput>\n\n <DeprecatedFormInput label={t('settings ollama llm model label')}>\n <Select.Root\n value={settings.ollamaModel ?? DEFAULT_VALUE}\n onValueChange={(value) => {\n settings.ollamaModel = value === DEFAULT_VALUE ? undefined : value;\n }}\n >\n <Select.TriggerButton placeholder={t('settings default llm model label')} />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n <Select.Option value={DEFAULT_VALUE}>{t('settings default label')}</Select.Option>\n {DEFAULT_OLLAMA_MODELS.map((model) => (\n <Select.Option key={model} value={model}>\n {model}\n </Select.Option>\n ))}\n </Select.Viewport>\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </DeprecatedFormInput>\n </DeprecatedFormContainer>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Match, type Schema } from 'effect';\nimport React, { type ChangeEvent, useCallback } from 'react';\n\nimport { debounce } from '@dxos/async';\nimport { Input, Select, Toolbar, useTranslation } from '@dxos/react-ui';\n\nimport { ASSISTANT_PLUGIN } from '../meta';\nimport { TemplateKinds, type TemplateType, type TemplateKindSchema } from '../types';\n\nexport const PromptSettings = ({ template }: { template: TemplateType }) => {\n const { t } = useTranslation(ASSISTANT_PLUGIN);\n\n const handleKindChange = useCallback(\n (value: string) => {\n const kind = Match.type<string>().pipe(\n Match.withReturnType<Schema.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 <div className='flex flex-col gap-4'>\n <h2>{t('prompt rules label')}</h2>\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 </div>\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { lazy } from 'react';\n\nexport * from './AmbientDialog';\nexport * from './AssistantSettings';\nexport * from './Prompt';\nexport * from './PromptSettings';\nexport * from './TemplateEditor';\nexport * from './Thread';\nexport * from './Toolbox';\n\n// TODO(burdon): Lazy loading causes issues with Tabster.\n// Repro: open assistant dialog then close.\n// https://github.com/microsoft/fluentui/issues/34020\nexport const AssistantDialog = lazy(() => import('./AssistantDialog'));\nexport const BlueprintContainer = lazy(() => import('./BlueprintContainer'));\nexport const ChatContainer = lazy(() => import('./ChatContainer'));\nexport const TemplateContainer = lazy(() => import('./TemplateContainer'));\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React", "DEFAULT_EDGE_MODELS", "DEFAULT_OLLAMA_MODELS", "Input", "Select", "useTranslation", "DeprecatedFormContainer", "DeprecatedFormInput", "DEFAULT_VALUE", "LLM_PROVIDER_LABELS", "edge", "ollama", "lmstudio", "AssistantSettings", "settings", "t", "useTranslation", "ASSISTANT_PLUGIN", "DeprecatedFormContainer", "DeprecatedFormInput", "label", "Input", "Switch", "checked", "customPrompts", "onCheckedChange", "Select", "Root", "value", "llmProvider", "onValueChange", "undefined", "TriggerButton", "placeholder", "Portal", "Content", "Viewport", "Option", "LLM_PROVIDERS", "map", "model", "key", "edgeModel", "DEFAULT_EDGE_MODELS", "ollamaModel", "DEFAULT_OLLAMA_MODELS", "Match", "React", "useCallback", "debounce", "Input", "Select", "Toolbar", "useTranslation", "PromptSettings", "template", "t", "useTranslation", "ASSISTANT_PLUGIN", "handleKindChange", "useCallback", "value", "kind", "Match", "type", "pipe", "withReturnType", "when", "include", "typename", "description", "orElse", "handleTypenameChange", "debounce", "event", "target", "handleDescriptionChange", "React", "div", "className", "h2", "Toolbar", "Root", "Select", "onValueChange", "Button", "asChild", "TriggerButton", "Portal", "Content", "Viewport", "TemplateKinds", "map", "Option", "key", "Input", "TextInput", "placeholder", "defaultValue", "onChange", "lazy", "AssistantDialog", "lazy", "BlueprintContainer", "ChatContainer", "TemplateContainer"]
|
|
7
7
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
AssistantCapabilities
|
|
3
|
-
} from "./chunk-3F44MBHU.mjs";
|
|
4
1
|
import {
|
|
5
2
|
ServiceType,
|
|
6
3
|
categoryIcons
|
|
7
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-AAOKC2JN.mjs";
|
|
5
|
+
import {
|
|
6
|
+
AssistantCapabilities
|
|
7
|
+
} from "./chunk-UE3IZ4PN.mjs";
|
|
8
8
|
import {
|
|
9
9
|
ASSISTANT_PLUGIN
|
|
10
10
|
} from "./chunk-XOZ7YMO3.mjs";
|
|
@@ -451,7 +451,7 @@ import { mx as mx3 } from "@dxos/react-ui-theme";
|
|
|
451
451
|
|
|
452
452
|
// packages/plugins/plugin-assistant/src/tools/function.ts
|
|
453
453
|
import { createTool, ToolResult } from "@dxos/ai";
|
|
454
|
-
import {
|
|
454
|
+
import { Type } from "@dxos/echo";
|
|
455
455
|
import { getInvocationUrl, getUserFunctionUrlInMetadata } from "@dxos/functions";
|
|
456
456
|
import { log } from "@dxos/log";
|
|
457
457
|
import { getMeta } from "@dxos/react-client/echo";
|
|
@@ -470,7 +470,7 @@ var convertFunctionToTool = (fn, edgeUrl, spaceId) => {
|
|
|
470
470
|
return createTool("user-function", {
|
|
471
471
|
name: fn.name,
|
|
472
472
|
description: fn.description,
|
|
473
|
-
schema: toEffectSchema(fn.inputSchema),
|
|
473
|
+
schema: Type.toEffectSchema(fn.inputSchema),
|
|
474
474
|
execute: async (input) => {
|
|
475
475
|
log.info("execute function tool", {
|
|
476
476
|
name: fn.name,
|
|
@@ -498,7 +498,8 @@ var convertFunctionToTool = (fn, edgeUrl, spaceId) => {
|
|
|
498
498
|
import { Schema } from "effect";
|
|
499
499
|
import jsonpointer from "jsonpointer";
|
|
500
500
|
import { ToolResult as ToolResult2, createRawTool } from "@dxos/ai";
|
|
501
|
-
import {
|
|
501
|
+
import { Type as Type2 } from "@dxos/echo";
|
|
502
|
+
import { normalizeSchema } from "@dxos/echo-schema";
|
|
502
503
|
import { invariant } from "@dxos/invariant";
|
|
503
504
|
import { log as log2 } from "@dxos/log";
|
|
504
505
|
import { deepMapValues } from "@dxos/util";
|
|
@@ -506,7 +507,7 @@ var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-assista
|
|
|
506
507
|
var createToolsFromService = async (service) => {
|
|
507
508
|
invariant(service.interfaces?.length === 1 && service.interfaces[0].kind === "api", void 0, {
|
|
508
509
|
F: __dxlog_file2,
|
|
509
|
-
L:
|
|
510
|
+
L: 24,
|
|
510
511
|
S: void 0,
|
|
511
512
|
A: [
|
|
512
513
|
"service.interfaces?.length === 1 && service.interfaces[0].kind === 'api'",
|
|
@@ -516,7 +517,7 @@ var createToolsFromService = async (service) => {
|
|
|
516
517
|
const iface = service.interfaces[0];
|
|
517
518
|
invariant(iface.schemaUrl, void 0, {
|
|
518
519
|
F: __dxlog_file2,
|
|
519
|
-
L:
|
|
520
|
+
L: 26,
|
|
520
521
|
S: void 0,
|
|
521
522
|
A: [
|
|
522
523
|
"iface.schemaUrl",
|
|
@@ -525,7 +526,7 @@ var createToolsFromService = async (service) => {
|
|
|
525
526
|
});
|
|
526
527
|
invariant(iface.schemaUrl, void 0, {
|
|
527
528
|
F: __dxlog_file2,
|
|
528
|
-
L:
|
|
529
|
+
L: 27,
|
|
529
530
|
S: void 0,
|
|
530
531
|
A: [
|
|
531
532
|
"iface.schemaUrl",
|
|
@@ -543,7 +544,7 @@ var createToolsFromApi = async (url, options) => {
|
|
|
543
544
|
spec
|
|
544
545
|
}, {
|
|
545
546
|
F: __dxlog_file2,
|
|
546
|
-
L:
|
|
547
|
+
L: 37,
|
|
547
548
|
S: void 0,
|
|
548
549
|
C: (f, a) => f(...a)
|
|
549
550
|
});
|
|
@@ -561,7 +562,7 @@ var createToolsFromApi = async (url, options) => {
|
|
|
561
562
|
methodItem
|
|
562
563
|
}, {
|
|
563
564
|
F: __dxlog_file2,
|
|
564
|
-
L:
|
|
565
|
+
L: 48,
|
|
565
566
|
S: void 0,
|
|
566
567
|
C: (f, a) => f(...a)
|
|
567
568
|
});
|
|
@@ -606,7 +607,7 @@ var createToolsFromApi = async (url, options) => {
|
|
|
606
607
|
S: void 0,
|
|
607
608
|
C: (f, a) => f(...a)
|
|
608
609
|
});
|
|
609
|
-
Schema.validateSync(
|
|
610
|
+
Schema.validateSync(Type2.JsonSchema)(inputSchema);
|
|
610
611
|
const description = methodItem.description ?? methodItem.summary;
|
|
611
612
|
if (!description) {
|
|
612
613
|
log2.warn("no description", {
|
|
@@ -721,7 +722,7 @@ var callApiEndpoint = async (endpoint, input) => {
|
|
|
721
722
|
}
|
|
722
723
|
case "body": {
|
|
723
724
|
const value = input[parameter.name];
|
|
724
|
-
const effectSchema =
|
|
725
|
+
const effectSchema = Type2.toEffectSchema(parameter.schema);
|
|
725
726
|
Schema.validateSync(effectSchema)(value);
|
|
726
727
|
if (body) {
|
|
727
728
|
throw new Error(`Duplicate body parameter: ${parameter.name}`);
|
|
@@ -1484,10 +1485,9 @@ var Thread = ({ classNames, space, messages, collapse = true, transcription, pro
|
|
|
1484
1485
|
import { useSignals as _useSignals9 } from "@preact-signals/safe-react/tracking";
|
|
1485
1486
|
import React7, { useCallback as useCallback3, useEffect as useEffect5 } from "react";
|
|
1486
1487
|
import { CollaborationActions, createIntent, useIntentDispatcher as useIntentDispatcher2 } from "@dxos/app-framework";
|
|
1488
|
+
import { DXN, Ref } from "@dxos/echo";
|
|
1487
1489
|
import { invariant as invariant4 } from "@dxos/invariant";
|
|
1488
|
-
import {
|
|
1489
|
-
import { refFromDXN } from "@dxos/live-object";
|
|
1490
|
-
import { log as log8 } from "@dxos/log";
|
|
1490
|
+
import { log as log7 } from "@dxos/log";
|
|
1491
1491
|
import { getSpace as getSpace2 } from "@dxos/react-client/echo";
|
|
1492
1492
|
|
|
1493
1493
|
// packages/plugins/plugin-assistant/src/hooks/processor.ts
|
|
@@ -1656,7 +1656,7 @@ var ChatProcessor = class {
|
|
|
1656
1656
|
C: (f, a) => f(...a)
|
|
1657
1657
|
});
|
|
1658
1658
|
if (err instanceof Error && err.message.includes("Overloaded")) {
|
|
1659
|
-
this.error.value = new
|
|
1659
|
+
this.error.value = new AiServiceOverloadedError("AI service overloaded", {
|
|
1660
1660
|
cause: err
|
|
1661
1661
|
});
|
|
1662
1662
|
} else {
|
|
@@ -1692,7 +1692,7 @@ var ChatProcessor = class {
|
|
|
1692
1692
|
return messages;
|
|
1693
1693
|
}
|
|
1694
1694
|
};
|
|
1695
|
-
var
|
|
1695
|
+
var AiServiceOverloadedError = class extends Error {
|
|
1696
1696
|
constructor() {
|
|
1697
1697
|
super(...arguments);
|
|
1698
1698
|
this.code = "AI_SERVICE_OVERLOADED";
|
|
@@ -1710,16 +1710,6 @@ import { log as log6 } from "@dxos/log";
|
|
|
1710
1710
|
import { useConfig } from "@dxos/react-client";
|
|
1711
1711
|
import { Filter as Filter3, fullyQualifiedId, useQuery as useQuery2 } from "@dxos/react-client/echo";
|
|
1712
1712
|
import { isNonNullable as isNonNullable3 } from "@dxos/util";
|
|
1713
|
-
|
|
1714
|
-
// packages/plugins/plugin-assistant/src/capabilities/index.ts
|
|
1715
|
-
import { lazy } from "@dxos/app-framework";
|
|
1716
|
-
var AiClient = lazy(() => import("./ai-client-COXVUC6V.mjs"));
|
|
1717
|
-
var AppGraphBuilder = lazy(() => import("./app-graph-builder-56OZ5RW4.mjs"));
|
|
1718
|
-
var IntentResolver = lazy(() => import("./intent-resolver-GWELYIX2.mjs"));
|
|
1719
|
-
var ReactSurface = lazy(() => import("./react-surface-DGS34EON.mjs"));
|
|
1720
|
-
var Settings = lazy(() => import("./settings-BTFB7IQ6.mjs"));
|
|
1721
|
-
|
|
1722
|
-
// packages/plugins/plugin-assistant/src/hooks/useChatProcessor.tsx
|
|
1723
1713
|
var __dxlog_file7 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-assistant/src/hooks/useChatProcessor.tsx";
|
|
1724
1714
|
var useChatProcessor = ({
|
|
1725
1715
|
chat,
|
|
@@ -1824,13 +1814,13 @@ ${definition.instructions}`),
|
|
|
1824
1814
|
|
|
1825
1815
|
// packages/plugins/plugin-assistant/src/hooks/useMessageQueue.ts
|
|
1826
1816
|
import { useMemo as useMemo4 } from "react";
|
|
1827
|
-
import {
|
|
1817
|
+
import { createQueueDXN } from "@dxos/echo-schema";
|
|
1828
1818
|
import { getSpace, useQueue } from "@dxos/react-client/echo";
|
|
1829
1819
|
var useMessageQueue = (chat) => {
|
|
1830
1820
|
const space = getSpace(chat);
|
|
1831
1821
|
const queueDxn = useMemo4(() => {
|
|
1832
1822
|
const dxn = space && chat?.queue.dxn;
|
|
1833
|
-
return dxn ?
|
|
1823
|
+
return dxn ? createQueueDXN(space.id, dxn.parts.at(-1)) : void 0;
|
|
1834
1824
|
}, [
|
|
1835
1825
|
space,
|
|
1836
1826
|
chat?.queue.dxn
|
|
@@ -1847,7 +1837,7 @@ import { EXA_API_KEY } from "@dxos/ai/testing";
|
|
|
1847
1837
|
import { BlueprintParser, createExaTool, createGraphWriterTool, createLocalSearchTool } from "@dxos/assistant";
|
|
1848
1838
|
import { DataTypes } from "@dxos/schema";
|
|
1849
1839
|
import { isNonNullable as isNonNullable4 } from "@dxos/util";
|
|
1850
|
-
var
|
|
1840
|
+
var RESEARCH_BLUEPRINT_DEFINITION = {
|
|
1851
1841
|
steps: [
|
|
1852
1842
|
{
|
|
1853
1843
|
instructions: "Research information and entities related to the selected objects.",
|
|
@@ -1869,14 +1859,15 @@ var RESEARCH_BLUEPRINT = BlueprintParser.create().parse({
|
|
|
1869
1859
|
]
|
|
1870
1860
|
}
|
|
1871
1861
|
]
|
|
1872
|
-
}
|
|
1862
|
+
};
|
|
1863
|
+
var RESEARCH_BLUEPRINT = BlueprintParser.create().parse(RESEARCH_BLUEPRINT_DEFINITION);
|
|
1873
1864
|
|
|
1874
1865
|
// packages/plugins/plugin-assistant/src/testing/test-functions.ts
|
|
1875
1866
|
import { DEFAULT_EDGE_MODEL as DEFAULT_EDGE_MODEL3 } from "@dxos/ai";
|
|
1876
1867
|
import { createSystemPrompt as createSystemPrompt2 } from "@dxos/artifact";
|
|
1877
1868
|
|
|
1878
1869
|
// packages/plugins/plugin-assistant/src/testing/test-services.ts
|
|
1879
|
-
import {
|
|
1870
|
+
import { Obj } from "@dxos/echo";
|
|
1880
1871
|
var AMADEUS_AUTH = {
|
|
1881
1872
|
type: "oauth",
|
|
1882
1873
|
clientId: "BOEnpLd1sMyKjAPGKYeAPFFy60u53QEG",
|
|
@@ -1893,7 +1884,7 @@ var VISUAL_CROSSING_CREDENTIALS = {
|
|
|
1893
1884
|
}
|
|
1894
1885
|
};
|
|
1895
1886
|
var TEST_SERVICES = [
|
|
1896
|
-
|
|
1887
|
+
Obj.make(ServiceType, {
|
|
1897
1888
|
serviceId: "amadeus.com/service/FlightSearch",
|
|
1898
1889
|
name: "Amadeus Flight Search",
|
|
1899
1890
|
description: "Search for local and international flights.",
|
|
@@ -1906,7 +1897,7 @@ var TEST_SERVICES = [
|
|
|
1906
1897
|
}
|
|
1907
1898
|
]
|
|
1908
1899
|
}),
|
|
1909
|
-
|
|
1900
|
+
Obj.make(ServiceType, {
|
|
1910
1901
|
serviceId: "amadeus.com/service/HotelSearch",
|
|
1911
1902
|
name: "Amadeus Hotel Search",
|
|
1912
1903
|
description: "Search for local and international hotels.",
|
|
@@ -1919,7 +1910,7 @@ var TEST_SERVICES = [
|
|
|
1919
1910
|
}
|
|
1920
1911
|
]
|
|
1921
1912
|
}),
|
|
1922
|
-
|
|
1913
|
+
Obj.make(ServiceType, {
|
|
1923
1914
|
serviceId: "visualcrossing.com/service/Weather",
|
|
1924
1915
|
name: "Visual Crossing Weather",
|
|
1925
1916
|
description: "Search for global weather forecasts.",
|
|
@@ -1933,7 +1924,7 @@ var TEST_SERVICES = [
|
|
|
1933
1924
|
]
|
|
1934
1925
|
}),
|
|
1935
1926
|
// TODO(burdon): Needs auth.
|
|
1936
|
-
|
|
1927
|
+
Obj.make(ServiceType, {
|
|
1937
1928
|
serviceId: "abstractapi.com/service/GeoLocation",
|
|
1938
1929
|
name: "Abstract GeoLocation",
|
|
1939
1930
|
description: "Get the location of any IP address.",
|
|
@@ -1950,7 +1941,7 @@ var TEST_SERVICES = [
|
|
|
1950
1941
|
//
|
|
1951
1942
|
...Array.from({
|
|
1952
1943
|
length: 20
|
|
1953
|
-
}, (_, i) =>
|
|
1944
|
+
}, (_, i) => Obj.make(ServiceType, {
|
|
1954
1945
|
serviceId: `example.com/service/test-${i}`,
|
|
1955
1946
|
name: `Test ${i}`,
|
|
1956
1947
|
description: `Test ${i}`,
|
|
@@ -1971,11 +1962,7 @@ import { useState as useState6, useCallback as useCallback2 } from "react";
|
|
|
1971
1962
|
// packages/plugins/plugin-assistant/src/hooks/useContextProvider.ts
|
|
1972
1963
|
import { useMemo as useMemo6 } from "react";
|
|
1973
1964
|
import { Capabilities as Capabilities3, useCapabilities as useCapabilities3 } from "@dxos/app-framework";
|
|
1974
|
-
import { Filter as Filter4 } from "@dxos/
|
|
1975
|
-
import { Obj } from "@dxos/echo";
|
|
1976
|
-
import { getObjectDXN, getLabel } from "@dxos/echo-schema";
|
|
1977
|
-
import { log as log7 } from "@dxos/log";
|
|
1978
|
-
var __dxlog_file8 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-assistant/src/hooks/useContextProvider.ts";
|
|
1965
|
+
import { Filter as Filter4, Obj as Obj2 } from "@dxos/echo";
|
|
1979
1966
|
var stringMatch = (query, label) => label.toLowerCase().startsWith(query.toLowerCase());
|
|
1980
1967
|
var useContextProvider = (space) => {
|
|
1981
1968
|
const artifactDefinitions = useCapabilities3(Capabilities3.ArtifactDefinition);
|
|
@@ -1987,27 +1974,16 @@ var useContextProvider = (space) => {
|
|
|
1987
1974
|
query: async ({ query }) => {
|
|
1988
1975
|
const artifactSchemas = artifactDefinitions.map((artifact) => artifact.schema);
|
|
1989
1976
|
const { objects } = await space.db.query(Filter4.or(...artifactSchemas.map((schema) => Filter4.type(schema)))).run();
|
|
1990
|
-
return objects.map((object) => {
|
|
1991
|
-
|
|
1992
|
-
|
|
1993
|
-
label: getLabel(Obj.getSchema(object), object)
|
|
1994
|
-
}, {
|
|
1995
|
-
F: __dxlog_file8,
|
|
1996
|
-
L: 37,
|
|
1997
|
-
S: void 0,
|
|
1998
|
-
C: (f, a) => f(...a)
|
|
1999
|
-
});
|
|
2000
|
-
return object;
|
|
2001
|
-
}).filter((object) => stringMatch(query, getLabel(Obj.getSchema(object), object) ?? "")).filter((object) => !!getObjectDXN(object)).map((object) => ({
|
|
2002
|
-
uri: getObjectDXN(object).toString(),
|
|
2003
|
-
label: getLabel(Obj.getSchema(object), object) ?? ""
|
|
1977
|
+
return objects.filter((object) => stringMatch(query, Obj2.getLabel(object) ?? "")).filter((object) => !!Obj2.getDXN(object)).map((object) => ({
|
|
1978
|
+
uri: Obj2.getDXN(object).toString(),
|
|
1979
|
+
label: Obj2.getLabel(object) ?? ""
|
|
2004
1980
|
}));
|
|
2005
1981
|
},
|
|
2006
1982
|
resolveMetadata: async ({ uri }) => {
|
|
2007
1983
|
const object = await space.db.query(Filter4.ids(uri)).first();
|
|
2008
1984
|
return {
|
|
2009
1985
|
uri,
|
|
2010
|
-
label: getLabel(
|
|
1986
|
+
label: Obj2.getLabel(object) ?? ""
|
|
2011
1987
|
};
|
|
2012
1988
|
}
|
|
2013
1989
|
};
|
|
@@ -2018,7 +1994,7 @@ var useContextProvider = (space) => {
|
|
|
2018
1994
|
};
|
|
2019
1995
|
|
|
2020
1996
|
// packages/plugins/plugin-assistant/src/components/Thread/ThreadContainer.tsx
|
|
2021
|
-
var
|
|
1997
|
+
var __dxlog_file8 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-assistant/src/components/Thread/ThreadContainer.tsx";
|
|
2022
1998
|
var ThreadContainer = ({ classNames, chat, settings, part, associatedArtifact, onOpenChange, ...props }) => {
|
|
2023
1999
|
var _effect = _useSignals9();
|
|
2024
2000
|
try {
|
|
@@ -2043,7 +2019,7 @@ var ThreadContainer = ({ classNames, chat, settings, part, associatedArtifact, o
|
|
|
2043
2019
|
if (space && chat && message && dispatch && associatedArtifact) {
|
|
2044
2020
|
void dispatch(createIntent(CollaborationActions.InsertContent, {
|
|
2045
2021
|
target: associatedArtifact,
|
|
2046
|
-
object:
|
|
2022
|
+
object: Ref.fromDXN(new DXN(DXN.kind.QUEUE, [
|
|
2047
2023
|
...chat.queue.dxn.parts,
|
|
2048
2024
|
message.id
|
|
2049
2025
|
])),
|
|
@@ -2058,9 +2034,9 @@ var ThreadContainer = ({ classNames, chat, settings, part, associatedArtifact, o
|
|
|
2058
2034
|
]);
|
|
2059
2035
|
const handleSubmit = useCallback3((text) => {
|
|
2060
2036
|
if (processor.streaming.value) {
|
|
2061
|
-
|
|
2062
|
-
F:
|
|
2063
|
-
L:
|
|
2037
|
+
log7.warn("ignoring submit; still processing.", void 0, {
|
|
2038
|
+
F: __dxlog_file8,
|
|
2039
|
+
L: 64,
|
|
2064
2040
|
S: void 0,
|
|
2065
2041
|
C: (f, a) => f(...a)
|
|
2066
2042
|
});
|
|
@@ -2068,8 +2044,8 @@ var ThreadContainer = ({ classNames, chat, settings, part, associatedArtifact, o
|
|
|
2068
2044
|
}
|
|
2069
2045
|
onOpenChange?.(true);
|
|
2070
2046
|
invariant4(messageQueue, void 0, {
|
|
2071
|
-
F:
|
|
2072
|
-
L:
|
|
2047
|
+
F: __dxlog_file8,
|
|
2048
|
+
L: 70,
|
|
2073
2049
|
S: void 0,
|
|
2074
2050
|
A: [
|
|
2075
2051
|
"messageQueue",
|
|
@@ -2079,7 +2055,7 @@ var ThreadContainer = ({ classNames, chat, settings, part, associatedArtifact, o
|
|
|
2079
2055
|
void processor.request(text, {
|
|
2080
2056
|
history: messageQueue.objects,
|
|
2081
2057
|
onComplete: (messages2) => {
|
|
2082
|
-
messageQueue.append(messages2);
|
|
2058
|
+
void messageQueue.append(messages2);
|
|
2083
2059
|
}
|
|
2084
2060
|
});
|
|
2085
2061
|
return true;
|
|
@@ -2120,11 +2096,6 @@ export {
|
|
|
2120
2096
|
Toolbox,
|
|
2121
2097
|
ToolboxContainer,
|
|
2122
2098
|
Thread,
|
|
2123
|
-
AiClient,
|
|
2124
|
-
AppGraphBuilder,
|
|
2125
|
-
IntentResolver,
|
|
2126
|
-
ReactSurface,
|
|
2127
|
-
Settings,
|
|
2128
2099
|
ThreadContainer
|
|
2129
2100
|
};
|
|
2130
|
-
//# sourceMappingURL=chunk-
|
|
2101
|
+
//# sourceMappingURL=chunk-JO4W3MF7.mjs.map
|