@dxos/plugin-markdown 0.8.3 → 0.8.4-main.5acf9ea
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/{MarkdownContainer-EFWQ6DHD.mjs → MarkdownContainer-NNBPE6A5.mjs} +37 -28
- package/dist/lib/browser/MarkdownContainer-NNBPE6A5.mjs.map +7 -0
- package/dist/lib/browser/{MarkdownPreview-F4PYFW5L.mjs → MarkdownPreview-7VG3K24R.mjs} +13 -13
- package/dist/lib/browser/MarkdownPreview-7VG3K24R.mjs.map +7 -0
- package/dist/lib/browser/{anchor-sort-BMAN2ABT.mjs → anchor-sort-Z7JQA7RL.mjs} +6 -6
- package/dist/lib/browser/anchor-sort-Z7JQA7RL.mjs.map +7 -0
- package/dist/lib/browser/{app-graph-serializer-EI6TEHRQ.mjs → app-graph-serializer-ZT5OVF5G.mjs} +13 -13
- package/dist/lib/browser/app-graph-serializer-ZT5OVF5G.mjs.map +7 -0
- package/dist/lib/browser/{artifact-definition-FQ2R6KPT.mjs → artifact-definition-7VNP5PCP.mjs} +15 -15
- package/dist/lib/browser/artifact-definition-7VNP5PCP.mjs.map +7 -0
- package/dist/lib/browser/chunk-CD4E4K7J.mjs +16 -0
- package/dist/lib/browser/chunk-CD4E4K7J.mjs.map +7 -0
- package/dist/lib/browser/{chunk-D767LUGU.mjs → chunk-K7ZFMSC4.mjs} +13 -12
- package/dist/lib/browser/chunk-K7ZFMSC4.mjs.map +7 -0
- package/dist/lib/browser/chunk-VCUKIILA.mjs +20 -0
- package/dist/lib/browser/{chunk-LXSRQPEP.mjs → chunk-VMX5SDGW.mjs} +9 -10
- package/dist/lib/browser/chunk-VMX5SDGW.mjs.map +7 -0
- package/dist/lib/browser/chunk-YHMGUSO7.mjs +80 -0
- package/dist/lib/browser/chunk-YHMGUSO7.mjs.map +7 -0
- package/dist/lib/browser/chunk-ZGY3DYC2.mjs +30 -0
- package/dist/lib/browser/chunk-ZGY3DYC2.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +21 -19
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-6ZOABX2J.mjs → intent-resolver-EBEF7WEI.mjs} +15 -19
- package/dist/lib/browser/intent-resolver-EBEF7WEI.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-surface-4B5ELMEW.mjs → react-surface-ZPMZT4VU.mjs} +31 -28
- package/dist/lib/browser/react-surface-ZPMZT4VU.mjs.map +7 -0
- package/dist/lib/browser/{settings-PLH54VC7.mjs → settings-MBDK4TWE.mjs} +6 -6
- package/dist/lib/browser/settings-MBDK4TWE.mjs.map +7 -0
- package/dist/lib/browser/{state-KI6PJ6DT.mjs → state-ZA6PZPUI.mjs} +8 -8
- package/dist/lib/browser/state-ZA6PZPUI.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +6 -14
- package/dist/lib/node-esm/{MarkdownContainer-O3SGMH4G.mjs → MarkdownContainer-Q6UO7DKT.mjs} +37 -28
- package/dist/lib/node-esm/MarkdownContainer-Q6UO7DKT.mjs.map +7 -0
- package/dist/lib/node-esm/{MarkdownPreview-KFDRV4GC.mjs → MarkdownPreview-UVWR2YK3.mjs} +13 -13
- package/dist/lib/node-esm/MarkdownPreview-UVWR2YK3.mjs.map +7 -0
- package/dist/lib/node-esm/{anchor-sort-BXL7BE67.mjs → anchor-sort-R6AAKYNG.mjs} +6 -6
- package/dist/lib/node-esm/anchor-sort-R6AAKYNG.mjs.map +7 -0
- package/dist/lib/node-esm/{app-graph-serializer-F7DGNF3G.mjs → app-graph-serializer-X4M5QEI6.mjs} +13 -13
- package/dist/lib/node-esm/app-graph-serializer-X4M5QEI6.mjs.map +7 -0
- package/dist/lib/node-esm/{artifact-definition-NQOHB6S5.mjs → artifact-definition-IRIILD7S.mjs} +15 -15
- package/dist/lib/node-esm/artifact-definition-IRIILD7S.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-6GCOJS4Y.mjs +81 -0
- package/dist/lib/node-esm/chunk-6GCOJS4Y.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-A7LLVI34.mjs +22 -0
- package/dist/lib/node-esm/chunk-B3J2M4YL.mjs +17 -0
- package/dist/lib/node-esm/chunk-B3J2M4YL.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-K26TX5V4.mjs → chunk-LZK3TLKM.mjs} +9 -10
- package/dist/lib/node-esm/chunk-LZK3TLKM.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-RCIXKCVG.mjs +31 -0
- package/dist/lib/node-esm/chunk-RCIXKCVG.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-BWDDFDJY.mjs → chunk-YGNVDYMB.mjs} +13 -12
- package/dist/lib/node-esm/chunk-YGNVDYMB.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +21 -19
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-CLMSVF2K.mjs → intent-resolver-L2UGZ72W.mjs} +15 -19
- package/dist/lib/node-esm/intent-resolver-L2UGZ72W.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-surface-YHFOQTVO.mjs → react-surface-3JJSTTQP.mjs} +31 -28
- package/dist/lib/node-esm/react-surface-3JJSTTQP.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-SIY33P3F.mjs → settings-LBDWWPZJ.mjs} +6 -6
- package/dist/lib/node-esm/settings-LBDWWPZJ.mjs.map +7 -0
- package/dist/lib/node-esm/{state-LLGVRYKL.mjs → state-UIHO2SFZ.mjs} +8 -8
- package/dist/lib/node-esm/state-UIHO2SFZ.mjs.map +7 -0
- package/dist/lib/node-esm/types/index.mjs +6 -14
- package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -1
- package/dist/types/src/capabilities/artifact-definition.d.ts +1 -1
- 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/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
- package/dist/types/src/capabilities/state.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownContainer.d.ts +5 -5
- package/dist/types/src/components/MarkdownContainer.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownContainer.stories.d.ts +1 -1
- package/dist/types/src/components/MarkdownContainer.stories.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts +1 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts +1 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownPreview/MarkdownPreview.d.ts +2 -2
- package/dist/types/src/components/MarkdownPreview/MarkdownPreview.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownPreview/MarkdownPreview.stories.d.ts +5 -12
- package/dist/types/src/components/MarkdownPreview/MarkdownPreview.stories.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts +2 -2
- package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts.map +1 -1
- package/dist/types/src/components/Suggestions.stories.d.ts +3 -3
- package/dist/types/src/components/Suggestions.stories.d.ts.map +1 -1
- package/dist/types/src/components/Toolbar.stories.d.ts +1 -1
- package/dist/types/src/components/Toolbar.stories.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +1 -1
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/events.d.ts.map +1 -1
- package/dist/types/src/extensions.d.ts +4 -4
- package/dist/types/src/extensions.d.ts.map +1 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts +1 -1
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +35 -80
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/Markdown.d.ts +43 -0
- package/dist/types/src/types/Markdown.d.ts.map +1 -0
- package/dist/types/src/types/MarkdownAction.d.ts +42 -0
- package/dist/types/src/types/MarkdownAction.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +2 -1
- package/dist/types/src/types/index.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +4 -59
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/src/util.d.ts +12 -3
- package/dist/types/src/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +47 -47
- package/src/MarkdownPlugin.tsx +7 -7
- package/src/capabilities/anchor-sort.ts +3 -3
- package/src/capabilities/app-graph-serializer.ts +8 -6
- package/src/capabilities/artifact-definition.ts +8 -8
- package/src/capabilities/capabilities.ts +4 -3
- package/src/capabilities/intent-resolver.ts +5 -11
- package/src/capabilities/react-surface.tsx +18 -17
- package/src/capabilities/settings.ts +3 -3
- package/src/capabilities/state.ts +6 -7
- package/src/components/MarkdownContainer.stories.tsx +7 -10
- package/src/components/MarkdownContainer.tsx +26 -13
- package/src/components/MarkdownEditor/MarkdownEditor.stories.tsx +2 -2
- package/src/components/MarkdownEditor/MarkdownEditor.tsx +3 -3
- package/src/components/MarkdownPreview/MarkdownPreview.stories.tsx +35 -32
- package/src/components/MarkdownPreview/MarkdownPreview.tsx +18 -16
- package/src/components/MarkdownSettings/MarkdownSettings.tsx +4 -4
- package/src/components/Suggestions.stories.tsx +22 -17
- package/src/components/Toolbar.stories.tsx +2 -3
- package/src/events.ts +2 -2
- package/src/extensions.tsx +22 -18
- package/src/hooks/useSelectCurrentThread.tsx +2 -2
- package/src/index.ts +1 -0
- package/src/meta.ts +10 -8
- package/src/translations.ts +9 -7
- package/src/types/Markdown.ts +55 -0
- package/src/types/MarkdownAction.ts +30 -0
- package/src/types/index.ts +2 -1
- package/src/types/types.ts +6 -51
- package/src/util.tsx +20 -6
- package/dist/lib/browser/MarkdownContainer-EFWQ6DHD.mjs.map +0 -7
- package/dist/lib/browser/MarkdownPreview-F4PYFW5L.mjs.map +0 -7
- package/dist/lib/browser/anchor-sort-BMAN2ABT.mjs.map +0 -7
- package/dist/lib/browser/app-graph-serializer-EI6TEHRQ.mjs.map +0 -7
- package/dist/lib/browser/artifact-definition-FQ2R6KPT.mjs.map +0 -7
- package/dist/lib/browser/chunk-354IBM5X.mjs +0 -20
- package/dist/lib/browser/chunk-D767LUGU.mjs.map +0 -7
- package/dist/lib/browser/chunk-JX6XNEHE.mjs +0 -22
- package/dist/lib/browser/chunk-JX6XNEHE.mjs.map +0 -7
- package/dist/lib/browser/chunk-LXSRQPEP.mjs.map +0 -7
- package/dist/lib/browser/chunk-N2D26K6W.mjs +0 -79
- package/dist/lib/browser/chunk-N2D26K6W.mjs.map +0 -7
- package/dist/lib/browser/chunk-QVJETNGS.mjs +0 -16
- package/dist/lib/browser/chunk-QVJETNGS.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-6ZOABX2J.mjs.map +0 -7
- package/dist/lib/browser/react-surface-4B5ELMEW.mjs.map +0 -7
- package/dist/lib/browser/settings-PLH54VC7.mjs.map +0 -7
- package/dist/lib/browser/state-KI6PJ6DT.mjs.map +0 -7
- package/dist/lib/node/MarkdownContainer-KYGUEZIL.cjs +0 -783
- package/dist/lib/node/MarkdownContainer-KYGUEZIL.cjs.map +0 -7
- package/dist/lib/node/MarkdownPreview-GCJJCXY6.cjs +0 -103
- package/dist/lib/node/MarkdownPreview-GCJJCXY6.cjs.map +0 -7
- package/dist/lib/node/anchor-sort-V3T4SFFI.cjs +0 -48
- package/dist/lib/node/anchor-sort-V3T4SFFI.cjs.map +0 -7
- package/dist/lib/node/app-graph-serializer-E6BXEDEL.cjs +0 -65
- package/dist/lib/node/app-graph-serializer-E6BXEDEL.cjs.map +0 -7
- package/dist/lib/node/artifact-definition-U27MH5SC.cjs +0 -158
- package/dist/lib/node/artifact-definition-U27MH5SC.cjs.map +0 -7
- package/dist/lib/node/chunk-3HHV4MM6.cjs +0 -101
- package/dist/lib/node/chunk-3HHV4MM6.cjs.map +0 -7
- package/dist/lib/node/chunk-CJLYFGPI.cjs +0 -74
- package/dist/lib/node/chunk-CJLYFGPI.cjs.map +0 -7
- package/dist/lib/node/chunk-FU3XZZCO.cjs +0 -58
- package/dist/lib/node/chunk-FU3XZZCO.cjs.map +0 -7
- package/dist/lib/node/chunk-IFYSBQE5.cjs +0 -35
- package/dist/lib/node/chunk-IFYSBQE5.cjs.map +0 -7
- package/dist/lib/node/chunk-LQAC5HL7.cjs +0 -68
- package/dist/lib/node/chunk-LQAC5HL7.cjs.map +0 -7
- package/dist/lib/node/chunk-ZU5OIHCY.cjs +0 -45
- package/dist/lib/node/chunk-ZU5OIHCY.cjs.map +0 -7
- package/dist/lib/node/index.cjs +0 -165
- package/dist/lib/node/index.cjs.map +0 -7
- package/dist/lib/node/intent-resolver-OEFLRNEJ.cjs +0 -77
- package/dist/lib/node/intent-resolver-OEFLRNEJ.cjs.map +0 -7
- package/dist/lib/node/meta.json +0 -1
- package/dist/lib/node/react-surface-456HQ4KZ.cjs +0 -218
- package/dist/lib/node/react-surface-456HQ4KZ.cjs.map +0 -7
- package/dist/lib/node/settings-E3NUTXJ4.cjs +0 -42
- package/dist/lib/node/settings-E3NUTXJ4.cjs.map +0 -7
- package/dist/lib/node/state-KKDRAG7X.cjs +0 -51
- package/dist/lib/node/state-KKDRAG7X.cjs.map +0 -7
- package/dist/lib/node/types/index.cjs +0 -40
- package/dist/lib/node/types/index.cjs.map +0 -7
- package/dist/lib/node-esm/MarkdownContainer-O3SGMH4G.mjs.map +0 -7
- package/dist/lib/node-esm/MarkdownPreview-KFDRV4GC.mjs.map +0 -7
- package/dist/lib/node-esm/anchor-sort-BXL7BE67.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-serializer-F7DGNF3G.mjs.map +0 -7
- package/dist/lib/node-esm/artifact-definition-NQOHB6S5.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-BWDDFDJY.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-JXXDCSMW.mjs +0 -17
- package/dist/lib/node-esm/chunk-JXXDCSMW.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-K26TX5V4.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-RX63ZNML.mjs +0 -24
- package/dist/lib/node-esm/chunk-RX63ZNML.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-T2Y2BT53.mjs +0 -80
- package/dist/lib/node-esm/chunk-T2Y2BT53.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-YOABAQ7A.mjs +0 -22
- package/dist/lib/node-esm/intent-resolver-CLMSVF2K.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-YHFOQTVO.mjs.map +0 -7
- package/dist/lib/node-esm/settings-SIY33P3F.mjs.map +0 -7
- package/dist/lib/node-esm/state-LLGVRYKL.mjs.map +0 -7
- package/dist/types/src/types/schema.d.ts +0 -35
- package/dist/types/src/types/schema.d.ts.map +0 -1
- package/src/types/schema.ts +0 -39
- /package/dist/lib/browser/{chunk-354IBM5X.mjs.map → chunk-VCUKIILA.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-YOABAQ7A.mjs.map → chunk-A7LLVI34.mjs.map} +0 -0
package/dist/lib/node-esm/{artifact-definition-NQOHB6S5.mjs → artifact-definition-IRIILD7S.mjs}
RENAMED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
} from "./chunk-
|
|
3
|
+
MarkdownAction_exports,
|
|
4
|
+
Markdown_exports
|
|
5
|
+
} from "./chunk-6GCOJS4Y.mjs";
|
|
6
6
|
import {
|
|
7
7
|
meta
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-RCIXKCVG.mjs";
|
|
9
9
|
|
|
10
|
-
//
|
|
10
|
+
// src/capabilities/artifact-definition.ts
|
|
11
11
|
import { pipe, Schema } from "effect";
|
|
12
12
|
import { createTool, ToolResult } from "@dxos/ai";
|
|
13
13
|
import { Capabilities, chain, contributes, createIntent } from "@dxos/app-framework";
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
14
|
+
import { createArtifactElement, ArtifactId } from "@dxos/assistant";
|
|
15
|
+
import { defineArtifact } from "@dxos/blueprints";
|
|
16
16
|
import { Obj } from "@dxos/echo";
|
|
17
17
|
import { invariant, assertArgument } from "@dxos/invariant";
|
|
18
18
|
import { SpaceAction } from "@dxos/plugin-space/types";
|
|
19
19
|
import { Filter, fullyQualifiedId } from "@dxos/react-client/echo";
|
|
20
|
-
var __dxlog_file = "/
|
|
20
|
+
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-markdown/src/capabilities/artifact-definition.ts";
|
|
21
21
|
var artifact_definition_default = () => {
|
|
22
22
|
const definition = defineArtifact({
|
|
23
23
|
id: `artifact:${meta.id}`,
|
|
@@ -27,7 +27,7 @@ var artifact_definition_default = () => {
|
|
|
27
27
|
- Use these tools to interact with documents, including listing available documents and retrieving their content.
|
|
28
28
|
- Documents are stored in Markdown format.
|
|
29
29
|
`,
|
|
30
|
-
schema:
|
|
30
|
+
schema: Markdown_exports.Document,
|
|
31
31
|
tools: [
|
|
32
32
|
createTool(meta.id, {
|
|
33
33
|
name: "create",
|
|
@@ -60,7 +60,7 @@ var artifact_definition_default = () => {
|
|
|
60
60
|
"'No intent dispatcher'"
|
|
61
61
|
]
|
|
62
62
|
});
|
|
63
|
-
const intent = pipe(createIntent(
|
|
63
|
+
const intent = pipe(createIntent(MarkdownAction_exports.Create, {
|
|
64
64
|
spaceId: extensions.space.id,
|
|
65
65
|
name,
|
|
66
66
|
content
|
|
@@ -90,14 +90,14 @@ var artifact_definition_default = () => {
|
|
|
90
90
|
]
|
|
91
91
|
});
|
|
92
92
|
const space = extensions.space;
|
|
93
|
-
const { objects: documents } = await space.db.query(Filter.type(
|
|
93
|
+
const { objects: documents } = await space.db.query(Filter.type(Markdown_exports.Document)).run();
|
|
94
94
|
const documentInfo = documents.map((doc) => {
|
|
95
|
-
invariant(Obj.instanceOf(
|
|
95
|
+
invariant(Obj.instanceOf(Markdown_exports.Document, doc), void 0, {
|
|
96
96
|
F: __dxlog_file,
|
|
97
97
|
L: 81,
|
|
98
98
|
S: void 0,
|
|
99
99
|
A: [
|
|
100
|
-
"Obj.instanceOf(
|
|
100
|
+
"Obj.instanceOf(Markdown.Document, doc)",
|
|
101
101
|
""
|
|
102
102
|
]
|
|
103
103
|
});
|
|
@@ -127,7 +127,7 @@ var artifact_definition_default = () => {
|
|
|
127
127
|
]
|
|
128
128
|
});
|
|
129
129
|
const document = await extensions.space.db.query(Filter.ids(ArtifactId.toDXN(id).toString())).first();
|
|
130
|
-
assertArgument(Obj.instanceOf(
|
|
130
|
+
assertArgument(Obj.instanceOf(Markdown_exports.Document, document), "Invalid type");
|
|
131
131
|
const { content } = await document.content?.load();
|
|
132
132
|
return ToolResult.Success({
|
|
133
133
|
id: fullyQualifiedId(document),
|
|
@@ -143,4 +143,4 @@ var artifact_definition_default = () => {
|
|
|
143
143
|
export {
|
|
144
144
|
artifact_definition_default as default
|
|
145
145
|
};
|
|
146
|
-
//# sourceMappingURL=artifact-definition-
|
|
146
|
+
//# sourceMappingURL=artifact-definition-IRIILD7S.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/artifact-definition.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { pipe, Schema } from 'effect';\n\nimport { createTool, ToolResult } from '@dxos/ai';\nimport { Capabilities, chain, contributes, createIntent, type PromiseIntentDispatcher } from '@dxos/app-framework';\nimport { createArtifactElement, ArtifactId } from '@dxos/assistant';\nimport { defineArtifact } from '@dxos/blueprints';\nimport { Obj } from '@dxos/echo';\nimport { invariant, assertArgument } from '@dxos/invariant';\nimport { SpaceAction } from '@dxos/plugin-space/types';\nimport { Filter, fullyQualifiedId, type Space } from '@dxos/react-client/echo';\n\nimport { meta } from '../meta';\nimport { Markdown, MarkdownAction } from '../types';\n\n// TODO(burdon): Factor out.\ndeclare global {\n interface ToolContextExtensions {\n space?: Space;\n dispatch?: PromiseIntentDispatcher;\n }\n}\n\nexport default () => {\n const definition = defineArtifact({\n id: `artifact:${meta.id}`, // TODO(burdon): meta.id/artifact?\n name: meta.name,\n instructions: `\n - The markdown plugin allows you to work with text documents in the current space.\n - Use these tools to interact with documents, including listing available documents and retrieving their content.\n - Documents are stored in Markdown format.\n `,\n schema: Markdown.Document,\n tools: [\n createTool(meta.id, {\n name: 'create',\n description: 'Create a new markdown document',\n caption: 'Creating document...',\n schema: Schema.Struct({\n name: Schema.optional(Schema.String).annotations({\n description: 'Optional name for the document.',\n }),\n content: Schema.String.annotations({\n description: 'The content of the document.',\n }),\n }),\n execute: async ({ name, content }, { extensions }) => {\n invariant(extensions?.space, 'No space');\n invariant(extensions?.dispatch, 'No intent dispatcher');\n\n const intent = pipe(\n createIntent(MarkdownAction.Create, {\n spaceId: extensions.space.id,\n name,\n content,\n }),\n chain(SpaceAction.AddObject, { target: extensions.space }),\n );\n\n const { data, error } = await extensions.dispatch(intent);\n if (!data || error) {\n return ToolResult.Error(error?.message ?? 'Failed to create document');\n }\n\n return ToolResult.Success(createArtifactElement(data.id));\n },\n }),\n createTool(meta.id, {\n name: 'list',\n description: 'List all markdown documents in the current space.',\n caption: 'Listing markdown documents...',\n schema: Schema.Struct({}),\n execute: async (_input, { extensions }) => {\n invariant(extensions?.space, 'No space');\n const space = extensions.space;\n const { objects: documents } = await space.db.query(Filter.type(Markdown.Document)).run();\n const documentInfo = documents.map((doc) => {\n invariant(Obj.instanceOf(Markdown.Document, doc));\n return {\n id: fullyQualifiedId(doc),\n name: doc.name || doc.fallbackName || 'Unnamed Document',\n // TODO(ZaymonFC): Include updatedAt?\n };\n });\n\n return ToolResult.Success(documentInfo);\n },\n }),\n createTool(meta.id, {\n name: 'inspect',\n description: 'Read the content of a markdown document.',\n caption: 'Inspecting markdown document...',\n schema: Schema.Struct({\n id: ArtifactId,\n }),\n execute: async ({ id }, { extensions }) => {\n invariant(extensions?.space, 'No space');\n const document = await extensions.space.db.query(Filter.ids(ArtifactId.toDXN(id).toString())).first();\n assertArgument(Obj.instanceOf(Markdown.Document, document), 'Invalid type');\n\n const { content } = await document.content?.load();\n return ToolResult.Success({\n id: fullyQualifiedId(document),\n name: document.name || document.fallbackName || 'Unnamed Document',\n content,\n });\n },\n }),\n ],\n });\n\n return contributes(Capabilities.ArtifactDefinition, definition);\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["pipe", "Schema", "createTool", "ToolResult", "Capabilities", "chain", "contributes", "createIntent", "createArtifactElement", "ArtifactId", "defineArtifact", "Obj", "invariant", "assertArgument", "SpaceAction", "Filter", "fullyQualifiedId", "definition", "defineArtifact", "id", "meta", "name", "instructions", "schema", "Markdown", "Document", "tools", "createTool", "description", "caption", "Schema", "Struct", "optional", "String", "annotations", "content", "execute", "extensions", "invariant", "space", "dispatch", "intent", "pipe", "createIntent", "MarkdownAction", "Create", "spaceId", "chain", "SpaceAction", "AddObject", "target", "data", "error", "ToolResult", "Error", "message", "Success", "createArtifactElement", "_input", "objects", "documents", "db", "query", "Filter", "type", "run", "documentInfo", "map", "doc", "Obj", "instanceOf", "fullyQualifiedId", "fallbackName", "ArtifactId", "document", "ids", "toDXN", "toString", "first", "assertArgument", "load", "contributes", "Capabilities", "ArtifactDefinition"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
__export,
|
|
4
|
+
not_meta
|
|
5
|
+
} from "./chunk-RCIXKCVG.mjs";
|
|
6
|
+
|
|
7
|
+
// src/types/MarkdownAction.ts
|
|
8
|
+
var MarkdownAction_exports = {};
|
|
9
|
+
__export(MarkdownAction_exports, {
|
|
10
|
+
Create: () => Create,
|
|
11
|
+
SetViewMode: () => SetViewMode
|
|
12
|
+
});
|
|
13
|
+
import { Schema as Schema2 } from "effect";
|
|
14
|
+
import { Type as Type2 } from "@dxos/echo";
|
|
15
|
+
import { EditorViewMode as EditorViewMode2 } from "@dxos/react-ui-editor/types";
|
|
16
|
+
|
|
17
|
+
// src/types/Markdown.ts
|
|
18
|
+
var Markdown_exports = {};
|
|
19
|
+
__export(Markdown_exports, {
|
|
20
|
+
Document: () => Document,
|
|
21
|
+
Settings: () => Settings,
|
|
22
|
+
makeDocument: () => makeDocument
|
|
23
|
+
});
|
|
24
|
+
import { Schema } from "effect";
|
|
25
|
+
import { Obj, Ref, Type } from "@dxos/echo";
|
|
26
|
+
import { LabelAnnotation } from "@dxos/echo-schema";
|
|
27
|
+
import { EditorInputMode, EditorViewMode } from "@dxos/react-ui-editor/types";
|
|
28
|
+
import { DataType } from "@dxos/schema";
|
|
29
|
+
var Document = Schema.Struct({
|
|
30
|
+
name: Schema.optional(Schema.String),
|
|
31
|
+
fallbackName: Schema.optional(Schema.String),
|
|
32
|
+
content: Type.Ref(DataType.Text)
|
|
33
|
+
}).pipe(Type.Obj({
|
|
34
|
+
typename: "dxos.org/type/Document",
|
|
35
|
+
version: "0.1.0"
|
|
36
|
+
}), LabelAnnotation.set([
|
|
37
|
+
"name",
|
|
38
|
+
"fallbackName"
|
|
39
|
+
]));
|
|
40
|
+
var makeDocument = ({ content = "", ...props } = {}) => Obj.make(Document, {
|
|
41
|
+
...props,
|
|
42
|
+
content: Ref.make(DataType.makeText(content))
|
|
43
|
+
});
|
|
44
|
+
var Settings = Schema.mutable(Schema.Struct({
|
|
45
|
+
defaultViewMode: EditorViewMode,
|
|
46
|
+
editorInputMode: Schema.optional(EditorInputMode),
|
|
47
|
+
experimental: Schema.optional(Schema.Boolean),
|
|
48
|
+
debug: Schema.optional(Schema.Boolean),
|
|
49
|
+
toolbar: Schema.optional(Schema.Boolean),
|
|
50
|
+
typewriter: Schema.optional(Schema.String),
|
|
51
|
+
// TODO(burdon): Per document settings.
|
|
52
|
+
numberedHeadings: Schema.optional(Schema.Boolean),
|
|
53
|
+
folding: Schema.optional(Schema.Boolean)
|
|
54
|
+
}));
|
|
55
|
+
|
|
56
|
+
// src/types/MarkdownAction.ts
|
|
57
|
+
var Create = class extends Schema2.TaggedClass()(`${not_meta.id}/action/create`, {
|
|
58
|
+
input: Schema2.Struct({
|
|
59
|
+
spaceId: Type2.SpaceId,
|
|
60
|
+
name: Schema2.optional(Schema2.String),
|
|
61
|
+
content: Schema2.optional(Schema2.String)
|
|
62
|
+
}),
|
|
63
|
+
output: Schema2.Struct({
|
|
64
|
+
object: Document
|
|
65
|
+
})
|
|
66
|
+
}) {
|
|
67
|
+
};
|
|
68
|
+
var SetViewMode = class extends Schema2.TaggedClass()(`${not_meta.id}/action/set-view-mode`, {
|
|
69
|
+
input: Schema2.Struct({
|
|
70
|
+
id: Schema2.String,
|
|
71
|
+
viewMode: EditorViewMode2
|
|
72
|
+
}),
|
|
73
|
+
output: Schema2.Void
|
|
74
|
+
}) {
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
export {
|
|
78
|
+
Markdown_exports,
|
|
79
|
+
MarkdownAction_exports
|
|
80
|
+
};
|
|
81
|
+
//# sourceMappingURL=chunk-6GCOJS4Y.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/types/MarkdownAction.ts", "../../../src/types/Markdown.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { Type } from '@dxos/echo';\nimport { EditorViewMode } from '@dxos/react-ui-editor/types';\n\nimport { Document } from './Markdown';\nimport { not_meta } from '../meta';\n\nexport class Create extends Schema.TaggedClass<Create>()(`${not_meta.id}/action/create`, {\n input: Schema.Struct({\n spaceId: Type.SpaceId,\n name: Schema.optional(Schema.String),\n content: Schema.optional(Schema.String),\n }),\n output: Schema.Struct({\n object: Document,\n }),\n}) {}\n\nexport class SetViewMode extends Schema.TaggedClass<SetViewMode>()(`${not_meta.id}/action/set-view-mode`, {\n input: Schema.Struct({\n id: Schema.String,\n viewMode: EditorViewMode,\n }),\n output: Schema.Void,\n}) {}\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { Obj, Ref, Type } from '@dxos/echo';\nimport { LabelAnnotation } from '@dxos/echo-schema';\nimport { EditorInputMode, EditorViewMode } from '@dxos/react-ui-editor/types';\nimport { DataType } from '@dxos/schema';\n\n/**\n * Document Item type.\n */\nexport const Document = Schema.Struct({\n name: Schema.optional(Schema.String),\n fallbackName: Schema.optional(Schema.String),\n content: Type.Ref(DataType.Text),\n}).pipe(\n Type.Obj({\n typename: 'dxos.org/type/Document',\n version: '0.1.0',\n }),\n LabelAnnotation.set(['name', 'fallbackName']),\n);\n\nexport type Document = Schema.Schema.Type<typeof Document>;\n\n/**\n * Document factory.\n */\nexport const makeDocument = ({\n content = '',\n ...props\n}: Partial<{ name: string; fallbackName: string; content: string }> = {}) =>\n Obj.make(Document, { ...props, content: Ref.make(DataType.makeText(content)) });\n\n/**\n * Plugin settings.\n */\nexport const Settings = Schema.mutable(\n Schema.Struct({\n defaultViewMode: EditorViewMode,\n editorInputMode: Schema.optional(EditorInputMode),\n experimental: Schema.optional(Schema.Boolean),\n debug: Schema.optional(Schema.Boolean),\n toolbar: Schema.optional(Schema.Boolean),\n typewriter: Schema.optional(Schema.String),\n // TODO(burdon): Per document settings.\n numberedHeadings: Schema.optional(Schema.Boolean),\n folding: Schema.optional(Schema.Boolean),\n }),\n);\n\nexport interface Settings extends Schema.Schema.Type<typeof Settings> {}\n"],
|
|
5
|
+
"mappings": ";;;;;;;AAAA;;;;;AAIA,SAASA,UAAAA,eAAc;AAEvB,SAASC,QAAAA,aAAY;AACrB,SAASC,kBAAAA,uBAAsB;;;ACP/B;;;;;;AAIA,SAASC,cAAc;AAEvB,SAASC,KAAKC,KAAKC,YAAY;AAC/B,SAASC,uBAAuB;AAChC,SAASC,iBAAiBC,sBAAsB;AAChD,SAASC,gBAAgB;AAKlB,IAAMC,WAAWC,OAAOC,OAAO;EACpCC,MAAMF,OAAOG,SAASH,OAAOI,MAAM;EACnCC,cAAcL,OAAOG,SAASH,OAAOI,MAAM;EAC3CE,SAASC,KAAKC,IAAIC,SAASC,IAAI;AACjC,CAAA,EAAGC,KACDJ,KAAKK,IAAI;EACPC,UAAU;EACVC,SAAS;AACX,CAAA,GACAC,gBAAgBC,IAAI;EAAC;EAAQ;CAAe,CAAA;AAQvC,IAAMC,eAAe,CAAC,EAC3BX,UAAU,IACV,GAAGY,MAAAA,IACiE,CAAC,MACrEN,IAAIO,KAAKpB,UAAU;EAAE,GAAGmB;EAAOZ,SAASE,IAAIW,KAAKV,SAASW,SAASd,OAAAA,CAAAA;AAAU,CAAA;AAKxE,IAAMe,WAAWrB,OAAOsB,QAC7BtB,OAAOC,OAAO;EACZsB,iBAAiBC;EACjBC,iBAAiBzB,OAAOG,SAASuB,eAAAA;EACjCC,cAAc3B,OAAOG,SAASH,OAAO4B,OAAO;EAC5CC,OAAO7B,OAAOG,SAASH,OAAO4B,OAAO;EACrCE,SAAS9B,OAAOG,SAASH,OAAO4B,OAAO;EACvCG,YAAY/B,OAAOG,SAASH,OAAOI,MAAM;;EAEzC4B,kBAAkBhC,OAAOG,SAASH,OAAO4B,OAAO;EAChDK,SAASjC,OAAOG,SAASH,OAAO4B,OAAO;AACzC,CAAA,CAAA;;;ADvCK,IAAMM,SAAN,cAAqBC,QAAOC,YAAW,EAAW,GAAGC,SAASC,EAAE,kBAAkB;EACvFC,OAAOJ,QAAOK,OAAO;IACnBC,SAASC,MAAKC;IACdC,MAAMT,QAAOU,SAASV,QAAOW,MAAM;IACnCC,SAASZ,QAAOU,SAASV,QAAOW,MAAM;EACxC,CAAA;EACAE,QAAQb,QAAOK,OAAO;IACpBS,QAAQC;EACV,CAAA;AACF,CAAA,EAAA;AAAI;AAEG,IAAMC,cAAN,cAA0BhB,QAAOC,YAAW,EAAgB,GAAGC,SAASC,EAAE,yBAAyB;EACxGC,OAAOJ,QAAOK,OAAO;IACnBF,IAAIH,QAAOW;IACXM,UAAUC;EACZ,CAAA;EACAL,QAAQb,QAAOmB;AACjB,CAAA,EAAA;AAAI;",
|
|
6
|
+
"names": ["Schema", "Type", "EditorViewMode", "Schema", "Obj", "Ref", "Type", "LabelAnnotation", "EditorInputMode", "EditorViewMode", "DataType", "Document", "Schema", "Struct", "name", "optional", "String", "fallbackName", "content", "Type", "Ref", "DataType", "Text", "pipe", "Obj", "typename", "version", "LabelAnnotation", "set", "makeDocument", "props", "make", "makeText", "Settings", "mutable", "defaultViewMode", "EditorViewMode", "editorInputMode", "EditorInputMode", "experimental", "Boolean", "debug", "toolbar", "typewriter", "numberedHeadings", "folding", "Create", "Schema", "TaggedClass", "not_meta", "id", "input", "Struct", "spaceId", "Type", "SpaceId", "name", "optional", "String", "content", "output", "object", "Document", "SetViewMode", "viewMode", "EditorViewMode", "Void"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
|
|
3
|
+
// src/capabilities/index.ts
|
|
4
|
+
import { lazy } from "@dxos/app-framework";
|
|
5
|
+
var AnchorSort = lazy(() => import("./anchor-sort-R6AAKYNG.mjs"));
|
|
6
|
+
var AppGraphSerializer = lazy(() => import("./app-graph-serializer-X4M5QEI6.mjs"));
|
|
7
|
+
var ArtifactDefinition = lazy(() => import("./artifact-definition-IRIILD7S.mjs"));
|
|
8
|
+
var IntentResolver = lazy(() => import("./intent-resolver-L2UGZ72W.mjs"));
|
|
9
|
+
var ReactSurface = lazy(() => import("./react-surface-3JJSTTQP.mjs"));
|
|
10
|
+
var MarkdownSettings = lazy(() => import("./settings-LBDWWPZJ.mjs"));
|
|
11
|
+
var MarkdownState = lazy(() => import("./state-UIHO2SFZ.mjs"));
|
|
12
|
+
|
|
13
|
+
export {
|
|
14
|
+
AnchorSort,
|
|
15
|
+
AppGraphSerializer,
|
|
16
|
+
ArtifactDefinition,
|
|
17
|
+
IntentResolver,
|
|
18
|
+
ReactSurface,
|
|
19
|
+
MarkdownSettings,
|
|
20
|
+
MarkdownState
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=chunk-A7LLVI34.mjs.map
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
meta
|
|
4
|
+
} from "./chunk-RCIXKCVG.mjs";
|
|
5
|
+
|
|
6
|
+
// src/capabilities/capabilities.ts
|
|
7
|
+
import { defineCapability } from "@dxos/app-framework";
|
|
8
|
+
(function(MarkdownCapabilities2) {
|
|
9
|
+
MarkdownCapabilities2.State = defineCapability(`${meta.id}/capability/state`);
|
|
10
|
+
MarkdownCapabilities2.Extensions = defineCapability(`${meta.id}/capability/extensions`);
|
|
11
|
+
})(MarkdownCapabilities || (MarkdownCapabilities = {}));
|
|
12
|
+
var MarkdownCapabilities;
|
|
13
|
+
|
|
14
|
+
export {
|
|
15
|
+
MarkdownCapabilities
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=chunk-B3J2M4YL.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/capabilities.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { defineCapability } from '@dxos/app-framework';\nimport { type EditorViewMode, type EditorStateStore } from '@dxos/react-ui-editor';\n\nimport { meta } from '../meta';\nimport { type MarkdownExtensionProvider, type MarkdownPluginState } from '../types';\n\nexport namespace MarkdownCapabilities {\n export const State = defineCapability<{\n state: MarkdownPluginState;\n editorState: EditorStateStore;\n getViewMode: (id: string) => EditorViewMode;\n setViewMode: (id: string, viewMode: EditorViewMode) => void;\n }>(`${meta.id}/capability/state`);\n\n // TODO(burdon): Move to ./types (external API)?\n export const Extensions = defineCapability<MarkdownExtensionProvider[]>(`${meta.id}/capability/extensions`);\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;AAIA,SAASA,wBAAwB;UAMhBC,uBAAAA;wBACFC,QAAQC,iBAKlB,GAAGC,KAAKC,EAAE,mBAAmB;wBAGnBC,aAAaH,iBAA8C,GAAGC,KAAKC,EAAE,wBAAwB;AAC5G,GAViBJ,yBAAAA,uBAAAA,CAAAA,EAAAA;;",
|
|
6
|
+
"names": ["defineCapability", "MarkdownCapabilities", "State", "defineCapability", "meta", "id", "Extensions"]
|
|
7
|
+
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
|
-
|
|
4
|
-
} from "./chunk-
|
|
3
|
+
Markdown_exports
|
|
4
|
+
} from "./chunk-6GCOJS4Y.mjs";
|
|
5
5
|
|
|
6
|
-
//
|
|
6
|
+
// src/util.tsx
|
|
7
7
|
import { debounce } from "@dxos/async";
|
|
8
|
-
import { Obj
|
|
9
|
-
|
|
8
|
+
import { Obj } from "@dxos/echo";
|
|
9
|
+
var isEditorModel = (data) => data && typeof data === "object" && "id" in data && typeof data.id === "string" && "text" in data && typeof data.text === "string";
|
|
10
10
|
var isMarkdownProperties = (data) => Obj.isObject(data) ? true : data && typeof data === "object" ? "title" in data && typeof data.title === "string" : false;
|
|
11
11
|
var nonTitleChars = /[^\w ]/g;
|
|
12
12
|
var getFallbackName = (content) => {
|
|
@@ -32,21 +32,20 @@ var serializer = {
|
|
|
32
32
|
},
|
|
33
33
|
deserialize: async ({ content: serialized }) => {
|
|
34
34
|
const { name, fallbackName, content } = JSON.parse(serialized);
|
|
35
|
-
return
|
|
35
|
+
return Markdown_exports.makeDocument({
|
|
36
36
|
name,
|
|
37
37
|
fallbackName,
|
|
38
|
-
content
|
|
39
|
-
content
|
|
40
|
-
}))
|
|
38
|
+
content
|
|
41
39
|
});
|
|
42
40
|
}
|
|
43
41
|
};
|
|
44
42
|
|
|
45
43
|
export {
|
|
44
|
+
isEditorModel,
|
|
46
45
|
isMarkdownProperties,
|
|
47
46
|
getFallbackName,
|
|
48
47
|
getAbstract,
|
|
49
48
|
setFallbackName,
|
|
50
49
|
serializer
|
|
51
50
|
};
|
|
52
|
-
//# sourceMappingURL=chunk-
|
|
51
|
+
//# sourceMappingURL=chunk-LZK3TLKM.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/util.tsx"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { debounce } from '@dxos/async';\nimport { Obj } from '@dxos/echo';\nimport { type TypedObjectSerializer } from '@dxos/plugin-space/types';\n\nimport { Markdown } from './types';\n\n/**\n * Checks if an object conforms to the interface needed to render an editor.\n * @deprecated Use Schema.instanceOf(Markdown.Document, data)\n */\n// TODO(burdon): Normalize types (from FilesPlugin).\nexport const isEditorModel = (data: any): data is { id: string; text: string } =>\n data &&\n typeof data === 'object' &&\n 'id' in data &&\n typeof data.id === 'string' &&\n 'text' in data &&\n typeof data.text === 'string';\n\nexport type MarkdownProperties = Record<string, any>;\n\nexport const isMarkdownProperties = (data: unknown): data is MarkdownProperties =>\n (Obj.isObject(data) as boolean)\n ? true\n : data && typeof data === 'object'\n ? 'title' in data && typeof data.title === 'string'\n : false;\n\nconst nonTitleChars = /[^\\w ]/g;\n\nexport const getFallbackName = (content: string) => {\n return content.substring(0, 31).split('\\n')[0].replaceAll(nonTitleChars, '').trim();\n};\n\nexport const getAbstract = (content: string) => {\n return content.substring(0, 128).split('\\n')[0].replaceAll(nonTitleChars, '').trim();\n};\n\nexport const setFallbackName = debounce((doc: Markdown.Document, content: string) => {\n const name = getFallbackName(content);\n if (doc.fallbackName !== name) {\n doc.fallbackName = name;\n }\n}, 200);\n\nexport const serializer: TypedObjectSerializer<Markdown.Document> = {\n serialize: async ({ object }): Promise<string> => {\n const { content } = await object.content.load();\n return JSON.stringify({ name: object.name, fallbackName: object.fallbackName, content });\n },\n\n deserialize: async ({ content: serialized }) => {\n const { name, fallbackName, content } = JSON.parse(serialized);\n return Markdown.makeDocument({ name, fallbackName, content });\n },\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;AAIA,SAASA,gBAAgB;AACzB,SAASC,WAAW;AAUb,IAAMC,gBAAgB,CAACC,SAC5BA,QACA,OAAOA,SAAS,YAChB,QAAQA,QACR,OAAOA,KAAKC,OAAO,YACnB,UAAUD,QACV,OAAOA,KAAKE,SAAS;AAIhB,IAAMC,uBAAuB,CAACH,SAClCI,IAAIC,SAASL,IAAAA,IACV,OACAA,QAAQ,OAAOA,SAAS,WACtB,WAAWA,QAAQ,OAAOA,KAAKM,UAAU,WACzC;AAER,IAAMC,gBAAgB;AAEf,IAAMC,kBAAkB,CAACC,YAAAA;AAC9B,SAAOA,QAAQC,UAAU,GAAG,EAAA,EAAIC,MAAM,IAAA,EAAM,CAAA,EAAGC,WAAWL,eAAe,EAAA,EAAIM,KAAI;AACnF;AAEO,IAAMC,cAAc,CAACL,YAAAA;AAC1B,SAAOA,QAAQC,UAAU,GAAG,GAAA,EAAKC,MAAM,IAAA,EAAM,CAAA,EAAGC,WAAWL,eAAe,EAAA,EAAIM,KAAI;AACpF;AAEO,IAAME,kBAAkBC,SAAS,CAACC,KAAwBR,YAAAA;AAC/D,QAAMS,OAAOV,gBAAgBC,OAAAA;AAC7B,MAAIQ,IAAIE,iBAAiBD,MAAM;AAC7BD,QAAIE,eAAeD;EACrB;AACF,GAAG,GAAA;AAEI,IAAME,aAAuD;EAClEC,WAAW,OAAO,EAAEC,OAAM,MAAE;AAC1B,UAAM,EAAEb,QAAO,IAAK,MAAMa,OAAOb,QAAQc,KAAI;AAC7C,WAAOC,KAAKC,UAAU;MAAEP,MAAMI,OAAOJ;MAAMC,cAAcG,OAAOH;MAAcV;IAAQ,CAAA;EACxF;EAEAiB,aAAa,OAAO,EAAEjB,SAASkB,WAAU,MAAE;AACzC,UAAM,EAAET,MAAMC,cAAcV,QAAO,IAAKe,KAAKI,MAAMD,UAAAA;AACnD,WAAOE,iBAASC,aAAa;MAAEZ;MAAMC;MAAcV;IAAQ,CAAA;EAC7D;AACF;",
|
|
6
|
+
"names": ["debounce", "Obj", "isEditorModel", "data", "id", "text", "isMarkdownProperties", "Obj", "isObject", "title", "nonTitleChars", "getFallbackName", "content", "substring", "split", "replaceAll", "trim", "getAbstract", "setFallbackName", "debounce", "doc", "name", "fallbackName", "serializer", "serialize", "object", "load", "JSON", "stringify", "deserialize", "serialized", "parse", "Markdown", "makeDocument"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __export = (target, all) => {
|
|
4
|
+
for (var name in all)
|
|
5
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
// src/meta.ts
|
|
9
|
+
import { trim } from "@dxos/util";
|
|
10
|
+
var meta = {
|
|
11
|
+
id: "dxos.org/plugin/markdown",
|
|
12
|
+
name: "Markdown",
|
|
13
|
+
description: trim`
|
|
14
|
+
A collaborative and extensible Markdown editor.
|
|
15
|
+
In addition to markdown capabilities, the plugin supports collaborative in-line comments.
|
|
16
|
+
You can use documents to extend the memory of your personal agents and add context for automated workflows.
|
|
17
|
+
`,
|
|
18
|
+
icon: "ph--text-aa--regular",
|
|
19
|
+
source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-markdown",
|
|
20
|
+
screenshots: [
|
|
21
|
+
"https://dxos.network/plugin-details-markdown-dark.png"
|
|
22
|
+
]
|
|
23
|
+
};
|
|
24
|
+
var not_meta = meta;
|
|
25
|
+
|
|
26
|
+
export {
|
|
27
|
+
__export,
|
|
28
|
+
meta,
|
|
29
|
+
not_meta
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=chunk-RCIXKCVG.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/meta.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\nimport { trim } from '@dxos/util';\n\nexport const meta: PluginMeta = {\n id: 'dxos.org/plugin/markdown',\n name: 'Markdown',\n description: trim`\n A collaborative and extensible Markdown editor.\n In addition to markdown capabilities, the plugin supports collaborative in-line comments.\n You can use documents to extend the memory of your personal agents and add context for automated workflows.\n `,\n icon: 'ph--text-aa--regular',\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-markdown',\n screenshots: ['https://dxos.network/plugin-details-markdown-dark.png'],\n};\n\n// TODO(burdon): Workaround for suspected vitest bug?\nexport const not_meta = meta;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;AAKA,SAASA,YAAY;AAEd,IAAMC,OAAmB;EAC9BC,IAAI;EACJC,MAAM;EACNC,aAAaC;;;;;EAKbC,MAAM;EACNC,QAAQ;EACRC,aAAa;IAAC;;AAChB;AAGO,IAAMC,WAAWR;",
|
|
6
|
+
"names": ["trim", "meta", "id", "name", "description", "trim", "icon", "source", "screenshots", "not_meta"]
|
|
7
|
+
}
|
|
@@ -1,24 +1,25 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
|
-
|
|
4
|
-
} from "./chunk-
|
|
3
|
+
Markdown_exports
|
|
4
|
+
} from "./chunk-6GCOJS4Y.mjs";
|
|
5
5
|
import {
|
|
6
|
-
|
|
7
|
-
} from "./chunk-
|
|
6
|
+
meta
|
|
7
|
+
} from "./chunk-RCIXKCVG.mjs";
|
|
8
8
|
|
|
9
|
-
//
|
|
10
|
-
|
|
11
|
-
var translations_default = [
|
|
9
|
+
// src/translations.ts
|
|
10
|
+
var translations = [
|
|
12
11
|
{
|
|
13
12
|
"en-US": {
|
|
14
|
-
[
|
|
13
|
+
[Markdown_exports.Document.typename]: {
|
|
15
14
|
"typename label": "Document",
|
|
16
15
|
"typename label_zero": "Documents",
|
|
17
16
|
"typename label_one": "Document",
|
|
18
17
|
"typename label_other": "Documents",
|
|
19
|
-
"object name placeholder": "New document"
|
|
18
|
+
"object name placeholder": "New document",
|
|
19
|
+
"rename object label": "Rename document",
|
|
20
|
+
"delete object label": "Delete document"
|
|
20
21
|
},
|
|
21
|
-
[
|
|
22
|
+
[meta.id]: {
|
|
22
23
|
"plugin name": "Editor",
|
|
23
24
|
"choose markdown from space dialog title": "Choose one or more documents to add",
|
|
24
25
|
// TODO(burdon): Style-guide for user-facing text (e.g., hints, questions, capitalization, etc.)
|
|
@@ -47,6 +48,6 @@ var translations_default = [
|
|
|
47
48
|
];
|
|
48
49
|
|
|
49
50
|
export {
|
|
50
|
-
|
|
51
|
+
translations
|
|
51
52
|
};
|
|
52
|
-
//# sourceMappingURL=chunk-
|
|
53
|
+
//# sourceMappingURL=chunk-YGNVDYMB.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/translations.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Resource } from '@dxos/react-ui';\n\nimport { meta } from './meta';\nimport { Markdown } from './types';\n\nexport const translations = [\n {\n 'en-US': {\n [Markdown.Document.typename]: {\n 'typename label': 'Document',\n 'typename label_zero': 'Documents',\n 'typename label_one': 'Document',\n 'typename label_other': 'Documents',\n 'object name placeholder': 'New document',\n 'rename object label': 'Rename document',\n 'delete object label': 'Delete document',\n },\n [meta.id]: {\n 'plugin name': 'Editor',\n 'choose markdown from space dialog title': 'Choose one or more documents to add',\n // TODO(burdon): Style-guide for user-facing text (e.g., hints, questions, capitalization, etc.)\n 'empty choose markdown from space message': 'None available; try creating a new one instead?',\n 'chooser done label': 'Add selected',\n 'editor placeholder': '',\n 'editor input mode label': 'Editor input mode',\n 'select editor input mode placeholder': 'Select editor input mode…',\n 'settings editor input mode default label': 'Default',\n 'settings editor input mode vim label': 'Vim',\n 'settings editor input mode vscode label': 'VS Code',\n 'settings toolbar label': 'Show toolbar',\n 'settings numbered headings label': 'Numbered headings',\n 'settings folding label': 'Folding',\n 'settings experimental label': 'Enable experimental features',\n 'settings debug label': 'Enable debugging features',\n 'settings debug placeholder': 'Typewriter script...',\n 'toggle view mode label': 'Toggle read-only',\n 'default view mode label': 'Default view mode',\n 'upload image label': 'Upload image',\n 'fallback title': 'Untitled',\n 'navigate to document label': 'Open document',\n },\n },\n },\n] as const satisfies Resource[];\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;AASO,IAAMA,eAAe;EAC1B;IACE,SAAS;MACP,CAACC,iBAASC,SAASC,QAAQ,GAAG;QAC5B,kBAAkB;QAClB,uBAAuB;QACvB,sBAAsB;QACtB,wBAAwB;QACxB,2BAA2B;QAC3B,uBAAuB;QACvB,uBAAuB;MACzB;MACA,CAACC,KAAKC,EAAE,GAAG;QACT,eAAe;QACf,2CAA2C;;QAE3C,4CAA4C;QAC5C,sBAAsB;QACtB,sBAAsB;QACtB,2BAA2B;QAC3B,wCAAwC;QACxC,4CAA4C;QAC5C,wCAAwC;QACxC,2CAA2C;QAC3C,0BAA0B;QAC1B,oCAAoC;QACpC,0BAA0B;QAC1B,+BAA+B;QAC/B,wBAAwB;QACxB,8BAA8B;QAC9B,0BAA0B;QAC1B,2BAA2B;QAC3B,sBAAsB;QACtB,kBAAkB;QAClB,8BAA8B;MAChC;IACF;EACF;;",
|
|
6
|
+
"names": ["translations", "Markdown", "Document", "typename", "meta", "id"]
|
|
7
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
|
-
|
|
4
|
-
} from "./chunk-
|
|
3
|
+
translations
|
|
4
|
+
} from "./chunk-YGNVDYMB.mjs";
|
|
5
5
|
import {
|
|
6
6
|
AnchorSort,
|
|
7
7
|
AppGraphSerializer,
|
|
@@ -10,34 +10,35 @@ import {
|
|
|
10
10
|
MarkdownSettings,
|
|
11
11
|
MarkdownState,
|
|
12
12
|
ReactSurface
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-A7LLVI34.mjs";
|
|
14
14
|
import {
|
|
15
15
|
MarkdownCapabilities
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-B3J2M4YL.mjs";
|
|
17
17
|
import {
|
|
18
18
|
getAbstract,
|
|
19
19
|
getFallbackName,
|
|
20
|
+
isEditorModel,
|
|
20
21
|
isMarkdownProperties,
|
|
21
22
|
serializer,
|
|
22
23
|
setFallbackName
|
|
23
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-LZK3TLKM.mjs";
|
|
24
25
|
import {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
} from "./chunk-
|
|
26
|
+
MarkdownAction_exports,
|
|
27
|
+
Markdown_exports
|
|
28
|
+
} from "./chunk-6GCOJS4Y.mjs";
|
|
28
29
|
import {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
} from "./chunk-
|
|
30
|
+
meta,
|
|
31
|
+
not_meta
|
|
32
|
+
} from "./chunk-RCIXKCVG.mjs";
|
|
32
33
|
|
|
33
|
-
//
|
|
34
|
+
// src/events.ts
|
|
34
35
|
import { Events } from "@dxos/app-framework";
|
|
35
36
|
(function(MarkdownEvents2) {
|
|
36
|
-
MarkdownEvents2.SetupExtensions = Events.createStateEvent(`${
|
|
37
|
+
MarkdownEvents2.SetupExtensions = Events.createStateEvent(`${meta.id}/event/setup-extensions`);
|
|
37
38
|
})(MarkdownEvents || (MarkdownEvents = {}));
|
|
38
39
|
var MarkdownEvents;
|
|
39
40
|
|
|
40
|
-
//
|
|
41
|
+
// src/MarkdownPlugin.tsx
|
|
41
42
|
import { Capabilities, contributes, createIntent, defineModule, definePlugin, Events as Events2 } from "@dxos/app-framework";
|
|
42
43
|
import { Ref } from "@dxos/echo";
|
|
43
44
|
import { ClientCapabilities, ClientEvents } from "@dxos/plugin-client";
|
|
@@ -51,7 +52,7 @@ var MarkdownPlugin = () => definePlugin(meta, [
|
|
|
51
52
|
id: `${meta.id}/module/translations`,
|
|
52
53
|
activatesOn: Events2.SetupTranslations,
|
|
53
54
|
activate: () => contributes(Capabilities.Translations, [
|
|
54
|
-
...
|
|
55
|
+
...translations,
|
|
55
56
|
...editorTranslations
|
|
56
57
|
])
|
|
57
58
|
}),
|
|
@@ -72,7 +73,7 @@ var MarkdownPlugin = () => definePlugin(meta, [
|
|
|
72
73
|
id: `${meta.id}/module/metadata`,
|
|
73
74
|
activatesOn: Events2.SetupMetadata,
|
|
74
75
|
activate: () => contributes(Capabilities.Metadata, {
|
|
75
|
-
id:
|
|
76
|
+
id: Markdown_exports.Document.typename,
|
|
76
77
|
metadata: {
|
|
77
78
|
label: (object) => object.name || object.fallbackName,
|
|
78
79
|
icon: "ph--text-aa--regular",
|
|
@@ -102,8 +103,8 @@ var MarkdownPlugin = () => definePlugin(meta, [
|
|
|
102
103
|
id: `${meta.id}/module/object-form`,
|
|
103
104
|
activatesOn: ClientEvents.SetupSchema,
|
|
104
105
|
activate: () => contributes(SpaceCapabilities.ObjectForm, defineObjectForm({
|
|
105
|
-
objectSchema:
|
|
106
|
-
getIntent: (_, { space }) => createIntent(
|
|
106
|
+
objectSchema: Markdown_exports.Document,
|
|
107
|
+
getIntent: (_, { space }) => createIntent(MarkdownAction_exports.Create, {
|
|
107
108
|
spaceId: space.id
|
|
108
109
|
})
|
|
109
110
|
}))
|
|
@@ -147,14 +148,15 @@ var MarkdownPlugin = () => definePlugin(meta, [
|
|
|
147
148
|
})
|
|
148
149
|
]);
|
|
149
150
|
export {
|
|
150
|
-
MARKDOWN_PLUGIN,
|
|
151
151
|
MarkdownCapabilities,
|
|
152
152
|
MarkdownEvents,
|
|
153
153
|
MarkdownPlugin,
|
|
154
154
|
getAbstract,
|
|
155
155
|
getFallbackName,
|
|
156
|
+
isEditorModel,
|
|
156
157
|
isMarkdownProperties,
|
|
157
158
|
meta,
|
|
159
|
+
not_meta,
|
|
158
160
|
serializer,
|
|
159
161
|
setFallbackName
|
|
160
162
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/events.ts", "../../../src/MarkdownPlugin.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Events } from '@dxos/app-framework';\n\nimport {
|
|
5
|
-
"mappings": "
|
|
6
|
-
"names": ["Events", "MarkdownEvents", "SetupExtensions", "Events", "createStateEvent", "
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Events } from '@dxos/app-framework';\n\nimport { meta } from './meta';\n\nexport namespace MarkdownEvents {\n export const SetupExtensions = Events.createStateEvent(`${meta.id}/event/setup-extensions`);\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from '@dxos/app-framework';\nimport { type Obj, Ref } from '@dxos/echo';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\nimport { SpaceCapabilities } from '@dxos/plugin-space';\nimport { defineObjectForm } from '@dxos/plugin-space/types';\nimport { createDocAccessor, getTextInRange } from '@dxos/react-client/echo';\nimport { translations as editorTranslations } from '@dxos/react-ui-editor';\nimport { DataType } from '@dxos/schema';\n\nimport {\n AnchorSort,\n AppGraphSerializer,\n ArtifactDefinition,\n IntentResolver,\n MarkdownState,\n MarkdownSettings,\n ReactSurface,\n} from './capabilities';\nimport { MarkdownEvents } from './events';\nimport { meta } from './meta';\nimport { translations } from './translations';\nimport { Markdown, MarkdownAction } from './types';\nimport { serializer } from './util';\n\nexport const MarkdownPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, [...translations, ...editorTranslations]),\n }),\n defineModule({\n id: `${meta.id}/module/settings`,\n activatesOn: Events.SetupSettings,\n activate: MarkdownSettings,\n }),\n defineModule({\n id: `${meta.id}/module/state`,\n // TODO(wittjosiah): Does not integrate with settings store.\n // Should this be a different event?\n // Should settings store be renamed to be more generic?\n activatesOn: Events.SetupSettings,\n activate: MarkdownState,\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: () =>\n contributes(Capabilities.Metadata, {\n id: Markdown.Document.typename,\n metadata: {\n label: (object: Markdown.Document) => object.name || object.fallbackName,\n icon: 'ph--text-aa--regular',\n graphProps: {\n managesAutofocus: true,\n },\n // TODO(wittjosiah): Move out of metadata.\n loadReferences: async (doc: Markdown.Document) => await Ref.Array.loadAll<Obj.Any>([doc.content]),\n serializer,\n // TODO(wittjosiah): Consider how to do generic comments without these.\n comments: 'anchored',\n selectionMode: 'multi-range',\n getAnchorLabel: (doc: Markdown.Document, anchor: string): string | undefined => {\n if (doc.content) {\n const [start, end] = anchor.split(':');\n return getTextInRange(createDocAccessor(doc.content.target!, ['content']), start, end);\n }\n },\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/object-form`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () =>\n contributes(\n SpaceCapabilities.ObjectForm,\n defineObjectForm({\n objectSchema: Markdown.Document,\n getIntent: (_, { space }) => createIntent(MarkdownAction.Create, { spaceId: space.id }),\n }),\n ),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () => contributes(ClientCapabilities.Schema, [DataType.Text]),\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n // TODO(wittjosiah): Should occur before the editor is loaded when surfaces activation is more granular.\n activatesBefore: [MarkdownEvents.SetupExtensions],\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: IntentResolver,\n }),\n defineModule({\n id: `${meta.id}/module/app-graph-serializer`,\n activatesOn: Events.AppGraphReady,\n activate: AppGraphSerializer,\n }),\n defineModule({\n id: `${meta.id}/module/anchor-sort`,\n // TODO(wittjosiah): More relevant event?\n activatesOn: Events.AppGraphReady,\n activate: AnchorSort,\n }),\n defineModule({\n id: `${meta.id}/module/artifact-definition`,\n activatesOn: Events.SetupArtifactDefinition,\n activate: ArtifactDefinition,\n }),\n ]);\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Events", "MarkdownEvents", "SetupExtensions", "Events", "createStateEvent", "meta", "id", "Capabilities", "contributes", "createIntent", "defineModule", "definePlugin", "Events", "Ref", "ClientCapabilities", "ClientEvents", "SpaceCapabilities", "defineObjectForm", "createDocAccessor", "getTextInRange", "translations", "editorTranslations", "DataType", "MarkdownPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "editorTranslations", "SetupSettings", "MarkdownSettings", "MarkdownState", "SetupMetadata", "Metadata", "Markdown", "Document", "typename", "metadata", "label", "object", "name", "fallbackName", "icon", "graphProps", "managesAutofocus", "loadReferences", "doc", "Ref", "Array", "loadAll", "content", "serializer", "comments", "selectionMode", "getAnchorLabel", "anchor", "start", "end", "split", "getTextInRange", "createDocAccessor", "target", "ClientEvents", "SetupSchema", "SpaceCapabilities", "ObjectForm", "defineObjectForm", "objectSchema", "getIntent", "_", "space", "createIntent", "MarkdownAction", "Create", "spaceId", "ClientCapabilities", "Schema", "DataType", "Text", "SetupReactSurface", "activatesBefore", "MarkdownEvents", "SetupExtensions", "ReactSurface", "SetupIntentResolver", "IntentResolver", "AppGraphReady", "AppGraphSerializer", "AnchorSort", "SetupArtifactDefinition", "ArtifactDefinition"]
|
|
7
7
|
}
|