@dxos/plugin-markdown 0.8.2-main.fbd8ed0 → 0.8.2-staging.7ac8446

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (201) hide show
  1. package/dist/lib/browser/{MarkdownContainer-KKWICAKV.mjs → MarkdownContainer-T3HU27RE.mjs} +67 -55
  2. package/dist/lib/browser/MarkdownContainer-T3HU27RE.mjs.map +7 -0
  3. package/dist/lib/browser/{app-graph-serializer-MPJQUYTQ.mjs → app-graph-serializer-NOXI4IQ5.mjs} +6 -5
  4. package/dist/lib/browser/app-graph-serializer-NOXI4IQ5.mjs.map +7 -0
  5. package/dist/lib/browser/{artifact-definition-DAF3YCVL.mjs → artifact-definition-CE6J6NY4.mjs} +9 -10
  6. package/dist/lib/browser/artifact-definition-CE6J6NY4.mjs.map +7 -0
  7. package/dist/lib/browser/{chunk-S42YXFZ7.mjs → chunk-3ULJ4FIJ.mjs} +24 -11
  8. package/dist/lib/browser/chunk-3ULJ4FIJ.mjs.map +7 -0
  9. package/dist/lib/browser/{chunk-TUCSFCS5.mjs → chunk-QXDKFACU.mjs} +5 -6
  10. package/dist/lib/browser/chunk-QXDKFACU.mjs.map +7 -0
  11. package/dist/lib/browser/chunk-YCJNW2RU.mjs +75 -0
  12. package/dist/lib/browser/chunk-YCJNW2RU.mjs.map +7 -0
  13. package/dist/lib/browser/index.mjs +6 -10
  14. package/dist/lib/browser/index.mjs.map +3 -3
  15. package/dist/lib/browser/intent-resolver-42GQ6HNZ.mjs +50 -0
  16. package/dist/lib/browser/intent-resolver-42GQ6HNZ.mjs.map +7 -0
  17. package/dist/lib/browser/meta.json +1 -1
  18. package/dist/lib/browser/{react-surface-EMQV3GVI.mjs → react-surface-RQX3CPFV.mjs} +7 -18
  19. package/dist/lib/browser/react-surface-RQX3CPFV.mjs.map +7 -0
  20. package/dist/lib/browser/{settings-GPB6WOIU.mjs → settings-GCSS3Y4Z.mjs} +4 -4
  21. package/dist/lib/browser/settings-GCSS3Y4Z.mjs.map +7 -0
  22. package/dist/lib/browser/{state-XTP5IP3W.mjs → state-O7P5JDIH.mjs} +2 -2
  23. package/dist/lib/browser/state-O7P5JDIH.mjs.map +7 -0
  24. package/dist/lib/browser/{thread-KW43PJ53.mjs → thread-3QGCFNVZ.mjs} +2 -2
  25. package/dist/lib/browser/types/index.mjs +1 -3
  26. package/dist/lib/node/{MarkdownContainer-LBI6ZESS.cjs → MarkdownContainer-6ZJIFAP6.cjs} +70 -58
  27. package/dist/lib/node/MarkdownContainer-6ZJIFAP6.cjs.map +7 -0
  28. package/dist/lib/node/{app-graph-serializer-Z7UJYSSL.cjs → app-graph-serializer-HKK3SEDN.cjs} +11 -10
  29. package/dist/lib/node/app-graph-serializer-HKK3SEDN.cjs.map +7 -0
  30. package/dist/lib/node/{artifact-definition-UIZSL2AL.cjs → artifact-definition-XGADFWCQ.cjs} +14 -15
  31. package/dist/lib/node/artifact-definition-XGADFWCQ.cjs.map +7 -0
  32. package/dist/lib/node/{chunk-AJHB57YQ.cjs → chunk-7QVONRSI.cjs} +57 -13
  33. package/dist/lib/node/chunk-7QVONRSI.cjs.map +7 -0
  34. package/dist/lib/node/{chunk-4525YF72.cjs → chunk-H5MYVP6F.cjs} +8 -9
  35. package/dist/lib/node/chunk-H5MYVP6F.cjs.map +7 -0
  36. package/dist/lib/node/{chunk-EO5H4OZJ.cjs → chunk-UEXGNGSS.cjs} +31 -44
  37. package/dist/lib/node/chunk-UEXGNGSS.cjs.map +7 -0
  38. package/dist/lib/node/index.cjs +21 -24
  39. package/dist/lib/node/index.cjs.map +3 -3
  40. package/dist/lib/node/intent-resolver-NW27BF3W.cjs +63 -0
  41. package/dist/lib/node/intent-resolver-NW27BF3W.cjs.map +7 -0
  42. package/dist/lib/node/meta.json +1 -1
  43. package/dist/lib/node/{react-surface-REHX3ABQ.cjs → react-surface-5X3SMHGI.cjs} +10 -21
  44. package/dist/lib/node/react-surface-5X3SMHGI.cjs.map +7 -0
  45. package/dist/lib/node/{settings-SF6JDJG6.cjs → settings-S2ISUVIH.cjs} +7 -7
  46. package/dist/lib/node/settings-S2ISUVIH.cjs.map +7 -0
  47. package/dist/lib/node/{state-K4IPZTRO.cjs → state-L44SG3ZM.cjs} +5 -5
  48. package/dist/lib/node/state-L44SG3ZM.cjs.map +7 -0
  49. package/dist/lib/node/{thread-NWBGBGOR.cjs → thread-42R57L4K.cjs} +6 -6
  50. package/dist/lib/node/types/index.cjs +6 -8
  51. package/dist/lib/node/types/index.cjs.map +2 -2
  52. package/dist/lib/node-esm/{MarkdownContainer-62XZY5EP.mjs → MarkdownContainer-URAPTO37.mjs} +67 -55
  53. package/dist/lib/node-esm/MarkdownContainer-URAPTO37.mjs.map +7 -0
  54. package/dist/lib/node-esm/{app-graph-serializer-DDMFMNYI.mjs → app-graph-serializer-QQ2CTHOQ.mjs} +6 -5
  55. package/dist/lib/node-esm/app-graph-serializer-QQ2CTHOQ.mjs.map +7 -0
  56. package/dist/lib/node-esm/{artifact-definition-ER3446S7.mjs → artifact-definition-WRG5ZRN5.mjs} +9 -10
  57. package/dist/lib/node-esm/artifact-definition-WRG5ZRN5.mjs.map +7 -0
  58. package/dist/lib/node-esm/chunk-4AM4VU3Y.mjs +76 -0
  59. package/dist/lib/node-esm/chunk-4AM4VU3Y.mjs.map +7 -0
  60. package/dist/lib/node-esm/{chunk-PDD5B7EO.mjs → chunk-F6UHVLH7.mjs} +24 -11
  61. package/dist/lib/node-esm/chunk-F6UHVLH7.mjs.map +7 -0
  62. package/dist/lib/node-esm/{chunk-CXTVDT5U.mjs → chunk-JAVD67QP.mjs} +5 -6
  63. package/dist/lib/node-esm/chunk-JAVD67QP.mjs.map +7 -0
  64. package/dist/lib/node-esm/index.mjs +6 -10
  65. package/dist/lib/node-esm/index.mjs.map +3 -3
  66. package/dist/lib/node-esm/intent-resolver-7HOMUVHR.mjs +51 -0
  67. package/dist/lib/node-esm/intent-resolver-7HOMUVHR.mjs.map +7 -0
  68. package/dist/lib/node-esm/meta.json +1 -1
  69. package/dist/lib/node-esm/{react-surface-FA7JYF2A.mjs → react-surface-6IKC3G46.mjs} +7 -18
  70. package/dist/lib/node-esm/react-surface-6IKC3G46.mjs.map +7 -0
  71. package/dist/lib/node-esm/{settings-2DT2C4RA.mjs → settings-ZDIFTK4N.mjs} +4 -4
  72. package/dist/lib/node-esm/settings-ZDIFTK4N.mjs.map +7 -0
  73. package/dist/lib/node-esm/{state-7VFYPF6Z.mjs → state-DWPOKLEY.mjs} +2 -2
  74. package/dist/lib/node-esm/state-DWPOKLEY.mjs.map +7 -0
  75. package/dist/lib/node-esm/{thread-D2E6W44K.mjs → thread-R2KHZD6V.mjs} +2 -2
  76. package/dist/lib/node-esm/types/index.mjs +1 -3
  77. package/dist/types/src/capabilities/app-graph-serializer.d.ts +2 -2
  78. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -1
  79. package/dist/types/src/capabilities/artifact-definition.d.ts.map +1 -1
  80. package/dist/types/src/capabilities/index.d.ts +3 -3
  81. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  82. package/dist/types/src/capabilities/intent-resolver.d.ts +2 -2
  83. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  84. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  85. package/dist/types/src/capabilities/state.d.ts +2 -2
  86. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  87. package/dist/types/src/components/MarkdownContainer.d.ts +2 -2
  88. package/dist/types/src/components/MarkdownContainer.d.ts.map +1 -1
  89. package/dist/types/src/components/{MarkdownEditor/MarkdownEditor.d.ts → MarkdownEditor.d.ts} +16 -1
  90. package/dist/types/src/components/MarkdownEditor.d.ts.map +1 -0
  91. package/dist/types/src/components/{MarkdownEditor/MarkdownEditor.stories.d.ts → MarkdownEditor.stories.d.ts} +3 -3
  92. package/dist/types/src/components/MarkdownEditor.stories.d.ts.map +1 -0
  93. package/dist/types/src/components/{MarkdownSettings/MarkdownSettings.d.ts → MarkdownSettings.d.ts} +1 -1
  94. package/dist/types/src/components/MarkdownSettings.d.ts.map +1 -0
  95. package/dist/types/src/components/Toolbar.stories.d.ts +2 -2
  96. package/dist/types/src/components/Toolbar.stories.d.ts.map +1 -1
  97. package/dist/types/src/components/index.d.ts +0 -1
  98. package/dist/types/src/components/index.d.ts.map +1 -1
  99. package/dist/types/src/extensions.d.ts +4 -4
  100. package/dist/types/src/extensions.d.ts.map +1 -1
  101. package/dist/types/src/hooks/useSelectCurrentThread.d.ts.map +1 -1
  102. package/dist/types/src/translations.d.ts +42 -4
  103. package/dist/types/src/translations.d.ts.map +1 -1
  104. package/dist/types/src/types/schema.d.ts +123 -336
  105. package/dist/types/src/types/schema.d.ts.map +1 -1
  106. package/dist/types/src/types/types.d.ts +85 -139
  107. package/dist/types/src/types/types.d.ts.map +1 -1
  108. package/dist/types/src/util.d.ts +0 -1
  109. package/dist/types/src/util.d.ts.map +1 -1
  110. package/dist/types/tsconfig.tsbuildinfo +1 -1
  111. package/package.json +33 -40
  112. package/src/MarkdownPlugin.tsx +5 -5
  113. package/src/capabilities/app-graph-serializer.ts +5 -4
  114. package/src/capabilities/artifact-definition.ts +4 -6
  115. package/src/capabilities/intent-resolver.ts +10 -43
  116. package/src/capabilities/react-surface.tsx +5 -13
  117. package/src/capabilities/settings.ts +2 -2
  118. package/src/capabilities/state.ts +4 -4
  119. package/src/components/MarkdownContainer.tsx +4 -4
  120. package/src/components/{MarkdownEditor/MarkdownEditor.stories.tsx → MarkdownEditor.stories.tsx} +35 -22
  121. package/src/components/{MarkdownEditor/MarkdownEditor.tsx → MarkdownEditor.tsx} +44 -24
  122. package/src/components/{MarkdownSettings/MarkdownSettings.tsx → MarkdownSettings.tsx} +2 -2
  123. package/src/components/Toolbar.stories.tsx +27 -27
  124. package/src/components/index.ts +0 -1
  125. package/src/extensions.tsx +37 -42
  126. package/src/hooks/useSelectCurrentThread.tsx +2 -2
  127. package/src/translations.ts +3 -3
  128. package/src/types/schema.ts +11 -24
  129. package/src/types/types.ts +21 -23
  130. package/src/util.tsx +4 -8
  131. package/dist/lib/browser/MarkdownContainer-KKWICAKV.mjs.map +0 -7
  132. package/dist/lib/browser/MarkdownPreview-FVSYVJGN.mjs +0 -81
  133. package/dist/lib/browser/MarkdownPreview-FVSYVJGN.mjs.map +0 -7
  134. package/dist/lib/browser/app-graph-serializer-MPJQUYTQ.mjs.map +0 -7
  135. package/dist/lib/browser/artifact-definition-DAF3YCVL.mjs.map +0 -7
  136. package/dist/lib/browser/chunk-JJY5LKZS.mjs +0 -20
  137. package/dist/lib/browser/chunk-JJY5LKZS.mjs.map +0 -7
  138. package/dist/lib/browser/chunk-S42YXFZ7.mjs.map +0 -7
  139. package/dist/lib/browser/chunk-TUCSFCS5.mjs.map +0 -7
  140. package/dist/lib/browser/chunk-XP2ZPCLI.mjs +0 -87
  141. package/dist/lib/browser/chunk-XP2ZPCLI.mjs.map +0 -7
  142. package/dist/lib/browser/intent-resolver-PVKVTAFF.mjs +0 -81
  143. package/dist/lib/browser/intent-resolver-PVKVTAFF.mjs.map +0 -7
  144. package/dist/lib/browser/react-surface-EMQV3GVI.mjs.map +0 -7
  145. package/dist/lib/browser/settings-GPB6WOIU.mjs.map +0 -7
  146. package/dist/lib/browser/state-XTP5IP3W.mjs.map +0 -7
  147. package/dist/lib/node/MarkdownContainer-LBI6ZESS.cjs.map +0 -7
  148. package/dist/lib/node/MarkdownPreview-O3BR4PZW.cjs +0 -104
  149. package/dist/lib/node/MarkdownPreview-O3BR4PZW.cjs.map +0 -7
  150. package/dist/lib/node/app-graph-serializer-Z7UJYSSL.cjs.map +0 -7
  151. package/dist/lib/node/artifact-definition-UIZSL2AL.cjs.map +0 -7
  152. package/dist/lib/node/chunk-4525YF72.cjs.map +0 -7
  153. package/dist/lib/node/chunk-AJHB57YQ.cjs.map +0 -7
  154. package/dist/lib/node/chunk-BWRBWEKN.cjs +0 -75
  155. package/dist/lib/node/chunk-BWRBWEKN.cjs.map +0 -7
  156. package/dist/lib/node/chunk-EO5H4OZJ.cjs.map +0 -7
  157. package/dist/lib/node/intent-resolver-ND7PSRJX.cjs +0 -94
  158. package/dist/lib/node/intent-resolver-ND7PSRJX.cjs.map +0 -7
  159. package/dist/lib/node/react-surface-REHX3ABQ.cjs.map +0 -7
  160. package/dist/lib/node/settings-SF6JDJG6.cjs.map +0 -7
  161. package/dist/lib/node/state-K4IPZTRO.cjs.map +0 -7
  162. package/dist/lib/node-esm/MarkdownContainer-62XZY5EP.mjs.map +0 -7
  163. package/dist/lib/node-esm/MarkdownPreview-KYWRMBRM.mjs +0 -82
  164. package/dist/lib/node-esm/MarkdownPreview-KYWRMBRM.mjs.map +0 -7
  165. package/dist/lib/node-esm/app-graph-serializer-DDMFMNYI.mjs.map +0 -7
  166. package/dist/lib/node-esm/artifact-definition-ER3446S7.mjs.map +0 -7
  167. package/dist/lib/node-esm/chunk-66XM3JMR.mjs +0 -88
  168. package/dist/lib/node-esm/chunk-66XM3JMR.mjs.map +0 -7
  169. package/dist/lib/node-esm/chunk-CXTVDT5U.mjs.map +0 -7
  170. package/dist/lib/node-esm/chunk-PDD5B7EO.mjs.map +0 -7
  171. package/dist/lib/node-esm/chunk-T5Z5BIOF.mjs +0 -22
  172. package/dist/lib/node-esm/chunk-T5Z5BIOF.mjs.map +0 -7
  173. package/dist/lib/node-esm/intent-resolver-5BF5PLSN.mjs +0 -82
  174. package/dist/lib/node-esm/intent-resolver-5BF5PLSN.mjs.map +0 -7
  175. package/dist/lib/node-esm/react-surface-FA7JYF2A.mjs.map +0 -7
  176. package/dist/lib/node-esm/settings-2DT2C4RA.mjs.map +0 -7
  177. package/dist/lib/node-esm/state-7VFYPF6Z.mjs.map +0 -7
  178. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts.map +0 -1
  179. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts.map +0 -1
  180. package/dist/types/src/components/MarkdownEditor/index.d.ts +0 -2
  181. package/dist/types/src/components/MarkdownEditor/index.d.ts.map +0 -1
  182. package/dist/types/src/components/MarkdownPreview/MarkdownPreview.d.ts +0 -6
  183. package/dist/types/src/components/MarkdownPreview/MarkdownPreview.d.ts.map +0 -1
  184. package/dist/types/src/components/MarkdownPreview/MarkdownPreview.stories.d.ts +0 -127
  185. package/dist/types/src/components/MarkdownPreview/MarkdownPreview.stories.d.ts.map +0 -1
  186. package/dist/types/src/components/MarkdownPreview/index.d.ts +0 -4
  187. package/dist/types/src/components/MarkdownPreview/index.d.ts.map +0 -1
  188. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts.map +0 -1
  189. package/dist/types/src/components/MarkdownSettings/index.d.ts +0 -2
  190. package/dist/types/src/components/MarkdownSettings/index.d.ts.map +0 -1
  191. package/dist/types/src/components/Suggestions.stories.d.ts +0 -12
  192. package/dist/types/src/components/Suggestions.stories.d.ts.map +0 -1
  193. package/src/components/MarkdownEditor/index.ts +0 -5
  194. package/src/components/MarkdownPreview/MarkdownPreview.stories.tsx +0 -74
  195. package/src/components/MarkdownPreview/MarkdownPreview.tsx +0 -85
  196. package/src/components/MarkdownPreview/index.ts +0 -9
  197. package/src/components/MarkdownSettings/index.ts +0 -5
  198. package/src/components/Suggestions.stories.tsx +0 -191
  199. /package/dist/lib/browser/{thread-KW43PJ53.mjs.map → thread-3QGCFNVZ.mjs.map} +0 -0
  200. /package/dist/lib/node/{thread-NWBGBGOR.cjs.map → thread-42R57L4K.cjs.map} +0 -0
  201. /package/dist/lib/node-esm/{thread-D2E6W44K.mjs.map → thread-R2KHZD6V.mjs.map} +0 -0
@@ -0,0 +1,76 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ MARKDOWN_PLUGIN
4
+ } from "./chunk-RX63ZNML.mjs";
5
+
6
+ // packages/plugins/plugin-markdown/src/types/schema.ts
7
+ import { EchoObject, Expando, LabelAnnotationId, Ref, S } from "@dxos/echo-schema";
8
+ import { ThreadType } from "@dxos/plugin-space/types";
9
+ import { TextType } from "@dxos/schema";
10
+ var DocumentSchema = S.Struct({
11
+ name: S.optional(S.String),
12
+ fallbackName: S.optional(S.String),
13
+ content: Ref(TextType),
14
+ threads: S.mutable(S.Array(Ref(ThreadType))),
15
+ assistantChatQueue: S.optional(Ref(Expando))
16
+ }).annotations({
17
+ // TODO(dmaretskyi): `S.Struct(...).pipe(defaultLabel(['name', 'fallbackName']))` for type-safe annotations.
18
+ [LabelAnnotationId]: [
19
+ "name",
20
+ "fallbackName"
21
+ ]
22
+ });
23
+ var DocumentType = DocumentSchema.pipe(EchoObject({
24
+ typename: "dxos.org/type/Document",
25
+ version: "0.1.0"
26
+ }));
27
+ var isEditorModel = (data) => data && typeof data === "object" && "id" in data && typeof data.id === "string" && "text" in data && typeof data.text === "string";
28
+
29
+ // packages/plugins/plugin-markdown/src/types/types.ts
30
+ import { S as S2 } from "@dxos/echo-schema";
31
+ import { EditorInputMode, EditorViewMode } from "@dxos/react-ui-editor";
32
+ var MARKDOWN_ACTION = `${MARKDOWN_PLUGIN}/action`;
33
+ var MarkdownAction;
34
+ (function(MarkdownAction2) {
35
+ class Create extends S2.TaggedClass()(MARKDOWN_ACTION, {
36
+ input: S2.Struct({
37
+ spaceId: S2.String,
38
+ name: S2.optional(S2.String),
39
+ content: S2.optional(S2.String)
40
+ }),
41
+ output: S2.Struct({
42
+ object: DocumentType
43
+ })
44
+ }) {
45
+ }
46
+ MarkdownAction2.Create = Create;
47
+ class SetViewMode extends S2.TaggedClass()(`${MARKDOWN_ACTION}/set-view-mode`, {
48
+ input: S2.Struct({
49
+ id: S2.String,
50
+ viewMode: EditorViewMode
51
+ }),
52
+ output: S2.Void
53
+ }) {
54
+ }
55
+ MarkdownAction2.SetViewMode = SetViewMode;
56
+ })(MarkdownAction || (MarkdownAction = {}));
57
+ var MarkdownSettingsSchema = S2.mutable(S2.Struct({
58
+ defaultViewMode: EditorViewMode,
59
+ editorInputMode: S2.optional(EditorInputMode),
60
+ experimental: S2.optional(S2.Boolean),
61
+ debug: S2.optional(S2.Boolean),
62
+ toolbar: S2.optional(S2.Boolean),
63
+ typewriter: S2.optional(S2.String),
64
+ // TODO(burdon): Per document settings.
65
+ numberedHeadings: S2.optional(S2.Boolean),
66
+ folding: S2.optional(S2.Boolean)
67
+ }));
68
+
69
+ export {
70
+ DocumentSchema,
71
+ DocumentType,
72
+ isEditorModel,
73
+ MarkdownAction,
74
+ MarkdownSettingsSchema
75
+ };
76
+ //# sourceMappingURL=chunk-4AM4VU3Y.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/types/schema.ts", "../../../src/types/types.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { EchoObject, Expando, LabelAnnotationId, Ref, S } from '@dxos/echo-schema';\nimport { ThreadType } from '@dxos/plugin-space/types';\nimport { TextType } from '@dxos/schema';\n\nexport const DocumentSchema = S.Struct({\n name: S.optional(S.String),\n fallbackName: S.optional(S.String),\n content: Ref(TextType),\n threads: S.mutable(S.Array(Ref(ThreadType))),\n assistantChatQueue: S.optional(Ref(Expando)),\n}).annotations({\n // TODO(dmaretskyi): `S.Struct(...).pipe(defaultLabel(['name', 'fallbackName']))` for type-safe annotations.\n [LabelAnnotationId]: ['name', 'fallbackName'],\n});\n\nexport const DocumentType = DocumentSchema.pipe(EchoObject({ typename: 'dxos.org/type/Document', version: '0.1.0' }));\nexport type DocumentType = S.Schema.Type<typeof DocumentType>;\n\n/**\n * Checks if an object conforms to the interface needed to render an editor.\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", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { S } from '@dxos/echo-schema';\n// TODO(wittjosiah): This pulls in UI code into the types entrypoint.\nimport { type Extension, EditorInputMode, EditorViewMode } from '@dxos/react-ui-editor';\n\nimport { DocumentType } from './schema';\nimport { MARKDOWN_PLUGIN } from '../meta';\n\nconst MARKDOWN_ACTION = `${MARKDOWN_PLUGIN}/action`;\n\nexport namespace MarkdownAction {\n export class Create extends S.TaggedClass<Create>()(MARKDOWN_ACTION, {\n input: S.Struct({\n spaceId: S.String,\n name: S.optional(S.String),\n content: S.optional(S.String),\n }),\n output: S.Struct({\n object: DocumentType,\n }),\n }) {}\n\n export class SetViewMode extends S.TaggedClass<SetViewMode>()(`${MARKDOWN_ACTION}/set-view-mode`, {\n input: S.Struct({\n id: S.String,\n viewMode: EditorViewMode,\n }),\n output: S.Void,\n }) {}\n}\n\nexport type MarkdownProperties = Record<string, any>;\n\n// TODO(burdon): Async.\nexport type MarkdownExtensionProvider = (props: { document?: DocumentType }) => Extension | undefined;\n\nexport type OnChange = (text: string) => void;\n\nexport type MarkdownPluginState = {\n // Codemirror extensions provided by other plugins.\n extensionProviders?: MarkdownExtensionProvider[];\n\n // TODO(burdon): Extend view mode per document to include scroll position, etc.\n // View mode per document.\n viewMode: Record<string, EditorViewMode>;\n};\n\nexport const MarkdownSettingsSchema = S.mutable(\n S.Struct({\n defaultViewMode: EditorViewMode,\n editorInputMode: S.optional(EditorInputMode),\n experimental: S.optional(S.Boolean),\n debug: S.optional(S.Boolean),\n toolbar: S.optional(S.Boolean),\n typewriter: S.optional(S.String),\n // TODO(burdon): Per document settings.\n numberedHeadings: S.optional(S.Boolean),\n folding: S.optional(S.Boolean),\n }),\n);\n\nexport type MarkdownSettingsProps = S.Schema.Type<typeof MarkdownSettingsSchema>;\n"],
5
+ "mappings": ";;;;;;AAIA,SAASA,YAAYC,SAASC,mBAAmBC,KAAKC,SAAS;AAC/D,SAASC,kBAAkB;AAC3B,SAASC,gBAAgB;AAElB,IAAMC,iBAAiBC,EAAEC,OAAO;EACrCC,MAAMF,EAAEG,SAASH,EAAEI,MAAM;EACzBC,cAAcL,EAAEG,SAASH,EAAEI,MAAM;EACjCE,SAASC,IAAIC,QAAAA;EACbC,SAAST,EAAEU,QAAQV,EAAEW,MAAMJ,IAAIK,UAAAA,CAAAA,CAAAA;EAC/BC,oBAAoBb,EAAEG,SAASI,IAAIO,OAAAA,CAAAA;AACrC,CAAA,EAAGC,YAAY;;EAEb,CAACC,iBAAAA,GAAoB;IAAC;IAAQ;;AAChC,CAAA;AAEO,IAAMC,eAAelB,eAAemB,KAAKC,WAAW;EAAEC,UAAU;EAA0BC,SAAS;AAAQ,CAAA,CAAA;AAO3G,IAAMC,gBAAgB,CAACC,SAC5BA,QACA,OAAOA,SAAS,YAChB,QAAQA,QACR,OAAOA,KAAKC,OAAO,YACnB,UAAUD,QACV,OAAOA,KAAKE,SAAS;;;AC5BvB,SAASC,KAAAA,UAAS;AAElB,SAAyBC,iBAAiBC,sBAAsB;AAKhE,IAAMC,kBAAkB,GAAGC,eAAAA;;UAEVC,iBAAAA;EACR,MAAMC,eAAeC,GAAEC,YAAW,EAAWL,iBAAiB;IACnEM,OAAOF,GAAEG,OAAO;MACdC,SAASJ,GAAEK;MACXC,MAAMN,GAAEO,SAASP,GAAEK,MAAM;MACzBG,SAASR,GAAEO,SAASP,GAAEK,MAAM;IAC9B,CAAA;IACAI,QAAQT,GAAEG,OAAO;MACfO,QAAQC;IACV,CAAA;EACF,CAAA,EAAA;EAAI;kBATSZ,SAAAA;EAWN,MAAMa,oBAAoBZ,GAAEC,YAAW,EAAgB,GAAGL,eAAAA,kBAAiC;IAChGM,OAAOF,GAAEG,OAAO;MACdU,IAAIb,GAAEK;MACNS,UAAUC;IACZ,CAAA;IACAN,QAAQT,GAAEgB;EACZ,CAAA,EAAA;EAAI;kBANSJ,cAAAA;AAOf,GAnBiBd,mBAAAA,iBAAAA,CAAAA,EAAAA;AAqCV,IAAMmB,yBAAyBjB,GAAEkB,QACtClB,GAAEG,OAAO;EACPgB,iBAAiBJ;EACjBK,iBAAiBpB,GAAEO,SAASc,eAAAA;EAC5BC,cAActB,GAAEO,SAASP,GAAEuB,OAAO;EAClCC,OAAOxB,GAAEO,SAASP,GAAEuB,OAAO;EAC3BE,SAASzB,GAAEO,SAASP,GAAEuB,OAAO;EAC7BG,YAAY1B,GAAEO,SAASP,GAAEK,MAAM;;EAE/BsB,kBAAkB3B,GAAEO,SAASP,GAAEuB,OAAO;EACtCK,SAAS5B,GAAEO,SAASP,GAAEuB,OAAO;AAC/B,CAAA,CAAA;",
6
+ "names": ["EchoObject", "Expando", "LabelAnnotationId", "Ref", "S", "ThreadType", "TextType", "DocumentSchema", "S", "Struct", "name", "optional", "String", "fallbackName", "content", "Ref", "TextType", "threads", "mutable", "Array", "ThreadType", "assistantChatQueue", "Expando", "annotations", "LabelAnnotationId", "DocumentType", "pipe", "EchoObject", "typename", "version", "isEditorModel", "data", "id", "text", "S", "EditorInputMode", "EditorViewMode", "MARKDOWN_ACTION", "MARKDOWN_PLUGIN", "MarkdownAction", "Create", "S", "TaggedClass", "input", "Struct", "spaceId", "String", "name", "optional", "content", "output", "object", "DocumentType", "SetViewMode", "id", "viewMode", "EditorViewMode", "Void", "MarkdownSettingsSchema", "mutable", "defaultViewMode", "editorInputMode", "EditorInputMode", "experimental", "Boolean", "debug", "toolbar", "typewriter", "numberedHeadings", "folding"]
7
+ }
@@ -1,20 +1,17 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  DocumentType
4
- } from "./chunk-66XM3JMR.mjs";
4
+ } from "./chunk-4AM4VU3Y.mjs";
5
5
 
6
6
  // packages/plugins/plugin-markdown/src/util.tsx
7
7
  import { debounce } from "@dxos/async";
8
- import { live, createObject, isEchoObject, loadObjectReferences, makeRef } from "@dxos/react-client/echo";
9
- import { DataType } from "@dxos/schema";
8
+ import { create, createObject, isEchoObject, loadObjectReferences, makeRef } from "@dxos/react-client/echo";
9
+ import { TextType } from "@dxos/schema";
10
10
  var isMarkdownProperties = (data) => isEchoObject(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) => {
13
13
  return content.substring(0, 31).split("\n")[0].replaceAll(nonTitleChars, "").trim();
14
14
  };
15
- var getAbstract = (content) => {
16
- return content.substring(0, 128).split("\n")[0].replaceAll(nonTitleChars, "").trim();
17
- };
18
15
  var setFallbackName = debounce((doc, content) => {
19
16
  const name = getFallbackName(content);
20
17
  if (doc.fallbackName !== name) {
@@ -32,10 +29,10 @@ var serializer = {
32
29
  },
33
30
  deserialize: async ({ content: serialized }) => {
34
31
  const { name, fallbackName, content } = JSON.parse(serialized);
35
- return createObject(live(DocumentType, {
32
+ return createObject(create(DocumentType, {
36
33
  name,
37
34
  fallbackName,
38
- content: makeRef(live(DataType.Text, {
35
+ content: makeRef(create(TextType, {
39
36
  content
40
37
  })),
41
38
  threads: []
@@ -43,11 +40,27 @@ var serializer = {
43
40
  }
44
41
  };
45
42
 
43
+ // packages/plugins/plugin-markdown/src/capabilities/index.ts
44
+ import { lazy } from "@dxos/app-framework";
45
+ var AppGraphSerializer = lazy(() => import("./app-graph-serializer-QQ2CTHOQ.mjs"));
46
+ var ArtifactDefinition = lazy(() => import("./artifact-definition-WRG5ZRN5.mjs"));
47
+ var IntentResolver = lazy(() => import("./intent-resolver-7HOMUVHR.mjs"));
48
+ var ReactSurface = lazy(() => import("./react-surface-6IKC3G46.mjs"));
49
+ var MarkdownSettings = lazy(() => import("./settings-ZDIFTK4N.mjs"));
50
+ var MarkdownState = lazy(() => import("./state-DWPOKLEY.mjs"));
51
+ var Thread = lazy(() => import("./thread-R2KHZD6V.mjs"));
52
+
46
53
  export {
47
54
  isMarkdownProperties,
48
55
  getFallbackName,
49
- getAbstract,
50
56
  setFallbackName,
51
- serializer
57
+ serializer,
58
+ AppGraphSerializer,
59
+ ArtifactDefinition,
60
+ IntentResolver,
61
+ ReactSurface,
62
+ MarkdownSettings,
63
+ MarkdownState,
64
+ Thread
52
65
  };
53
- //# sourceMappingURL=chunk-PDD5B7EO.mjs.map
66
+ //# sourceMappingURL=chunk-F6UHVLH7.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/util.tsx", "../../../src/capabilities/index.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { debounce } from '@dxos/async';\nimport { type TypedObjectSerializer } from '@dxos/plugin-space/types';\nimport { create, createObject, isEchoObject, loadObjectReferences, makeRef } from '@dxos/react-client/echo';\nimport { TextType } from '@dxos/schema';\n\nimport { DocumentType, type MarkdownProperties } from './types';\n\nexport const isMarkdownProperties = (data: unknown): data is MarkdownProperties =>\n isEchoObject(data)\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 setFallbackName = debounce((doc: DocumentType, content: string) => {\n const name = getFallbackName(content);\n if (doc.fallbackName !== name) {\n doc.fallbackName = name;\n }\n}, 200);\n\nexport const serializer: TypedObjectSerializer<DocumentType> = {\n serialize: async ({ object }): Promise<string> => {\n const content = await loadObjectReferences(object, (doc) => doc.content);\n return JSON.stringify({ name: object.name, fallbackName: object.fallbackName, content: content.target?.content });\n },\n\n deserialize: async ({ content: serialized }) => {\n const { name, fallbackName, content } = JSON.parse(serialized);\n return createObject(\n create(DocumentType, { name, fallbackName, content: makeRef(create(TextType, { content })), threads: [] }),\n );\n },\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const AppGraphSerializer = lazy(() => import('./app-graph-serializer'));\nexport const ArtifactDefinition = lazy(() => import('./artifact-definition'));\nexport const IntentResolver = lazy(() => import('./intent-resolver'));\nexport const ReactSurface = lazy(() => import('./react-surface'));\nexport const MarkdownSettings = lazy(() => import('./settings'));\nexport const MarkdownState = lazy(() => import('./state'));\nexport const Thread = lazy(() => import('./thread'));\n\nexport * from './capabilities';\n"],
5
+ "mappings": ";;;;;;AAIA,SAASA,gBAAgB;AAEzB,SAASC,QAAQC,cAAcC,cAAcC,sBAAsBC,eAAe;AAClF,SAASC,gBAAgB;AAIlB,IAAMC,uBAAuB,CAACC,SACnCC,aAAaD,IAAAA,IACT,OACAA,QAAQ,OAAOA,SAAS,WACtB,WAAWA,QAAQ,OAAOA,KAAKE,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,kBAAkBC,SAAS,CAACC,KAAmBP,YAAAA;AAC1D,QAAMQ,OAAOT,gBAAgBC,OAAAA;AAC7B,MAAIO,IAAIE,iBAAiBD,MAAM;AAC7BD,QAAIE,eAAeD;EACrB;AACF,GAAG,GAAA;AAEI,IAAME,aAAkD;EAC7DC,WAAW,OAAO,EAAEC,OAAM,MAAE;AAC1B,UAAMZ,UAAU,MAAMa,qBAAqBD,QAAQ,CAACL,QAAQA,IAAIP,OAAO;AACvE,WAAOc,KAAKC,UAAU;MAAEP,MAAMI,OAAOJ;MAAMC,cAAcG,OAAOH;MAAcT,SAASA,QAAQgB,QAAQhB;IAAQ,CAAA;EACjH;EAEAiB,aAAa,OAAO,EAAEjB,SAASkB,WAAU,MAAE;AACzC,UAAM,EAAEV,MAAMC,cAAcT,QAAO,IAAKc,KAAKK,MAAMD,UAAAA;AACnD,WAAOE,aACLC,OAAOC,cAAc;MAAEd;MAAMC;MAAcT,SAASuB,QAAQF,OAAOG,UAAU;QAAExB;MAAQ,CAAA,CAAA;MAAKyB,SAAS,CAAA;IAAG,CAAA,CAAA;EAE5G;AACF;;;ACvCA,SAASC,YAAY;AAEd,IAAMC,qBAAqBC,KAAK,MAAM,OAAO,qCAAA,CAAA;AAC7C,IAAMC,qBAAqBD,KAAK,MAAM,OAAO,oCAAA,CAAA;AAC7C,IAAME,iBAAiBF,KAAK,MAAM,OAAO,gCAAA,CAAA;AACzC,IAAMG,eAAeH,KAAK,MAAM,OAAO,8BAAA,CAAA;AACvC,IAAMI,mBAAmBJ,KAAK,MAAM,OAAO,yBAAA,CAAA;AAC3C,IAAMK,gBAAgBL,KAAK,MAAM,OAAO,sBAAA,CAAA;AACxC,IAAMM,SAASN,KAAK,MAAM,OAAO,uBAAA,CAAA;",
6
+ "names": ["debounce", "create", "createObject", "isEchoObject", "loadObjectReferences", "makeRef", "TextType", "isMarkdownProperties", "data", "isEchoObject", "title", "nonTitleChars", "getFallbackName", "content", "substring", "split", "replaceAll", "trim", "setFallbackName", "debounce", "doc", "name", "fallbackName", "serializer", "serialize", "object", "loadObjectReferences", "JSON", "stringify", "target", "deserialize", "serialized", "parse", "createObject", "create", "DocumentType", "makeRef", "TextType", "threads", "lazy", "AppGraphSerializer", "lazy", "ArtifactDefinition", "IntentResolver", "ReactSurface", "MarkdownSettings", "MarkdownState", "Thread"]
7
+ }
@@ -1,16 +1,17 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  DocumentType
4
- } from "./chunk-66XM3JMR.mjs";
4
+ } from "./chunk-4AM4VU3Y.mjs";
5
5
  import {
6
6
  MARKDOWN_PLUGIN
7
7
  } from "./chunk-RX63ZNML.mjs";
8
8
 
9
9
  // packages/plugins/plugin-markdown/src/translations.ts
10
+ import { getSchemaTypename } from "@dxos/echo-schema";
10
11
  var translations_default = [
11
12
  {
12
13
  "en-US": {
13
- [DocumentType.typename]: {
14
+ [getSchemaTypename(DocumentType)]: {
14
15
  "typename label": "Document",
15
16
  "object name placeholder": "New document"
16
17
  },
@@ -34,9 +35,7 @@ var translations_default = [
34
35
  "settings debug placeholder": "Typewriter script...",
35
36
  "toggle view mode label": "Toggle read-only",
36
37
  "default view mode label": "Default view mode",
37
- "upload image label": "Upload image",
38
- "fallback title": "Untitled",
39
- "navigate to document label": "Open document"
38
+ "upload image label": "Upload image"
40
39
  }
41
40
  }
42
41
  }
@@ -45,4 +44,4 @@ var translations_default = [
45
44
  export {
46
45
  translations_default
47
46
  };
48
- //# sourceMappingURL=chunk-CXTVDT5U.mjs.map
47
+ //# sourceMappingURL=chunk-JAVD67QP.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 { getSchemaTypename } from '@dxos/echo-schema';\n\nimport { MARKDOWN_PLUGIN } from './meta';\nimport { DocumentType } from './types';\n\nexport default [\n {\n 'en-US': {\n [getSchemaTypename(DocumentType)!]: {\n 'typename label': 'Document',\n 'object name placeholder': 'New document',\n },\n [MARKDOWN_PLUGIN]: {\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 },\n },\n },\n];\n"],
5
+ "mappings": ";;;;;;;;;AAIA,SAASA,yBAAyB;AAKlC,IAAA,uBAAe;EACb;IACE,SAAS;MACP,CAACC,kBAAkBC,YAAAA,CAAAA,GAAiB;QAClC,kBAAkB;QAClB,2BAA2B;MAC7B;MACA,CAACC,eAAAA,GAAkB;QACjB,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;MACxB;IACF;EACF;;",
6
+ "names": ["getSchemaTypename", "getSchemaTypename", "DocumentType", "MARKDOWN_PLUGIN"]
7
+ }
@@ -1,7 +1,7 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  translations_default
4
- } from "./chunk-CXTVDT5U.mjs";
4
+ } from "./chunk-JAVD67QP.mjs";
5
5
  import {
6
6
  AppGraphSerializer,
7
7
  ArtifactDefinition,
@@ -9,22 +9,19 @@ import {
9
9
  MarkdownSettings,
10
10
  MarkdownState,
11
11
  ReactSurface,
12
- Thread
13
- } from "./chunk-T5Z5BIOF.mjs";
14
- import {
15
- getAbstract,
12
+ Thread,
16
13
  getFallbackName,
17
14
  isMarkdownProperties,
18
15
  serializer,
19
16
  setFallbackName
20
- } from "./chunk-PDD5B7EO.mjs";
17
+ } from "./chunk-F6UHVLH7.mjs";
21
18
  import {
22
19
  MarkdownCapabilities
23
20
  } from "./chunk-ETXPC5VP.mjs";
24
21
  import {
25
22
  DocumentType,
26
23
  MarkdownAction
27
- } from "./chunk-66XM3JMR.mjs";
24
+ } from "./chunk-4AM4VU3Y.mjs";
28
25
  import {
29
26
  MARKDOWN_PLUGIN,
30
27
  meta
@@ -45,7 +42,7 @@ import { ClientCapabilities, ClientEvents } from "@dxos/plugin-client";
45
42
  import { SpaceCapabilities, ThreadEvents } from "@dxos/plugin-space";
46
43
  import { defineObjectForm } from "@dxos/plugin-space/types";
47
44
  import { translations as editorTranslations } from "@dxos/react-ui-editor";
48
- import { DataType } from "@dxos/schema";
45
+ import { TextType } from "@dxos/schema";
49
46
  var MarkdownPlugin = () => definePlugin(meta, [
50
47
  defineModule({
51
48
  id: `${meta.id}/module/translations`,
@@ -102,7 +99,7 @@ var MarkdownPlugin = () => definePlugin(meta, [
102
99
  id: `${meta.id}/module/schema`,
103
100
  activatesOn: ClientEvents.SetupSchema,
104
101
  activate: () => contributes(ClientCapabilities.Schema, [
105
- DataType.Text
102
+ TextType
106
103
  ])
107
104
  }),
108
105
  defineModule({
@@ -140,7 +137,6 @@ export {
140
137
  MarkdownCapabilities,
141
138
  MarkdownEvents,
142
139
  MarkdownPlugin,
143
- getAbstract,
144
140
  getFallbackName,
145
141
  isMarkdownProperties,
146
142
  meta,
@@ -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 { MARKDOWN_PLUGIN } from './meta';\n\nexport namespace MarkdownEvents {\n export const SetupExtensions = Events.createStateEvent(`${MARKDOWN_PLUGIN}/setup-extensions`);\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from '@dxos/app-framework';\nimport { isInstanceOf, type BaseObject } from '@dxos/echo-schema';\nimport { RefArray } from '@dxos/live-object';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\nimport { SpaceCapabilities, ThreadEvents } from '@dxos/plugin-space';\nimport { defineObjectForm } from '@dxos/plugin-space/types';\nimport { translations as editorTranslations } from '@dxos/react-ui-editor';\nimport { DataType } from '@dxos/schema';\n\nimport {\n AppGraphSerializer,\n ArtifactDefinition,\n IntentResolver,\n MarkdownState,\n MarkdownSettings,\n ReactSurface,\n Thread,\n} from './capabilities';\nimport { MarkdownEvents } from './events';\nimport { meta } from './meta';\nimport translations from './translations';\nimport { DocumentType, 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: DocumentType.typename,\n metadata: {\n label: (object: any) =>\n isInstanceOf(DocumentType, object) ? object.name || object.fallbackName : undefined,\n icon: 'ph--text-aa--regular',\n graphProps: {\n managesAutofocus: true,\n },\n // TODO(wittjosiah): Move out of metadata.\n loadReferences: async (doc: DocumentType) =>\n await RefArray.loadAll<BaseObject>([doc.content, ...doc.threads]),\n serializer,\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: DocumentType,\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/thread`,\n activatesOn: ThreadEvents.SetupThread,\n activate: Thread,\n }),\n defineModule({\n id: `${meta.id}/module/artifact-definition`,\n activatesOn: Events.SetupArtifactDefinition,\n activate: ArtifactDefinition,\n }),\n ]);\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,SAASA,cAAc;;UAINC,iBAAAA;kBACFC,kBAAkBC,OAAOC,iBAAiB,GAAGC,eAAAA,mBAAkC;AAC9F,GAFiBJ,mBAAAA,iBAAAA,CAAAA,EAAAA;;;ACJjB,SAASK,cAAcC,aAAaC,cAAcC,cAAcC,cAAcC,UAAAA,eAAc;AAC5F,SAASC,oBAAqC;AAC9C,SAASC,gBAAgB;AACzB,SAASC,oBAAoBC,oBAAoB;AACjD,SAASC,mBAAmBC,oBAAoB;AAChD,SAASC,wBAAwB;AACjC,SAASC,gBAAgBC,0BAA0B;AACnD,SAASC,gBAAgB;AAiBlB,IAAMC,iBAAiB,MAC5BC,aAAaC,MAAM;EACjBC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOC;IACpBC,UAAU,MAAMC,YAAYC,aAAaC,cAAc;SAAIC;SAAiBC;KAAmB;EACjG,CAAA;EACAV,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOQ;IACpBN,UAAUO;EACZ,CAAA;EACAZ,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;;;;IAIdC,aAAaC,QAAOQ;IACpBN,UAAUQ;EACZ,CAAA;EACAb,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOW;IACpBT,UAAU,MACRC,YAAYC,aAAaQ,UAAU;MACjCd,IAAIe,aAAaC;MACjBC,UAAU;QACRC,OAAO,CAACC,WACNC,aAAaL,cAAcI,MAAAA,IAAUA,OAAOE,QAAQF,OAAOG,eAAeC;QAC5EC,MAAM;QACNC,YAAY;UACVC,kBAAkB;QACpB;;QAEAC,gBAAgB,OAAOC,QACrB,MAAMC,SAASC,QAAoB;UAACF,IAAIG;aAAYH,IAAII;SAAQ;QAClEC;MACF;IACF,CAAA;EACJ,CAAA;EACAlC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaiC,aAAaC;IAC1B/B,UAAU,MACRC,YACE+B,kBAAkBC,YAClBC,iBAAiB;MACfC,cAAcxB;MACdyB,WAAW,CAACC,GAAG,EAAEC,MAAK,MAAOC,aAAaC,eAAeC,QAAQ;QAAEC,SAASJ,MAAM1C;MAAG,CAAA;IACvF,CAAA,CAAA;EAEN,CAAA;EACAD,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaiC,aAAaC;IAC1B/B,UAAU,MAAMC,YAAY0C,mBAAmBC,QAAQ;MAACC,SAASC;KAAK;EACxE,CAAA;EACAnD,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOiD;;IAEpBC,iBAAiB;MAACC,eAAeC;;IACjClD,UAAUmD;EACZ,CAAA;EACAxD,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOsD;IACpBpD,UAAUqD;EACZ,CAAA;EACA1D,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOwD;IACpBtD,UAAUuD;EACZ,CAAA;EACA5D,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAa2D,aAAaC;IAC1BzD,UAAU0D;EACZ,CAAA;EACA/D,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAO6D;IACpB3D,UAAU4D;EACZ,CAAA;CACD;",
6
- "names": ["Events", "MarkdownEvents", "SetupExtensions", "Events", "createStateEvent", "MARKDOWN_PLUGIN", "Capabilities", "contributes", "createIntent", "defineModule", "definePlugin", "Events", "isInstanceOf", "RefArray", "ClientCapabilities", "ClientEvents", "SpaceCapabilities", "ThreadEvents", "defineObjectForm", "translations", "editorTranslations", "DataType", "MarkdownPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "editorTranslations", "SetupSettings", "MarkdownSettings", "MarkdownState", "SetupMetadata", "Metadata", "DocumentType", "typename", "metadata", "label", "object", "isInstanceOf", "name", "fallbackName", "undefined", "icon", "graphProps", "managesAutofocus", "loadReferences", "doc", "RefArray", "loadAll", "content", "threads", "serializer", "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", "ThreadEvents", "SetupThread", "Thread", "SetupArtifactDefinition", "ArtifactDefinition"]
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Events } from '@dxos/app-framework';\n\nimport { MARKDOWN_PLUGIN } from './meta';\n\nexport namespace MarkdownEvents {\n export const SetupExtensions = Events.createStateEvent(`${MARKDOWN_PLUGIN}/setup-extensions`);\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from '@dxos/app-framework';\nimport { isInstanceOf, type BaseObject } from '@dxos/echo-schema';\nimport { RefArray } from '@dxos/live-object';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\nimport { SpaceCapabilities, ThreadEvents } from '@dxos/plugin-space';\nimport { defineObjectForm } from '@dxos/plugin-space/types';\nimport { translations as editorTranslations } from '@dxos/react-ui-editor';\nimport { TextType } from '@dxos/schema';\n\nimport {\n MarkdownState,\n MarkdownSettings,\n ReactSurface,\n IntentResolver,\n AppGraphSerializer,\n Thread,\n ArtifactDefinition,\n} from './capabilities';\nimport { MarkdownEvents } from './events';\nimport { meta } from './meta';\nimport translations from './translations';\nimport { DocumentType, 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: DocumentType.typename,\n metadata: {\n label: (object: any) =>\n isInstanceOf(DocumentType, object) ? object.name || object.fallbackName : undefined,\n icon: 'ph--text-aa--regular',\n graphProps: {\n managesAutofocus: true,\n },\n // TODO(wittjosiah): Move out of metadata.\n loadReferences: async (doc: DocumentType) =>\n await RefArray.loadAll<BaseObject>([doc.content, ...doc.threads]),\n serializer,\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: DocumentType,\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, [TextType]),\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/thread`,\n activatesOn: ThreadEvents.SetupThread,\n activate: Thread,\n }),\n defineModule({\n id: `${meta.id}/module/artifact-definition`,\n activatesOn: Events.SetupArtifactDefinition,\n activate: ArtifactDefinition,\n }),\n ]);\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,SAASA,cAAc;;UAINC,iBAAAA;kBACFC,kBAAkBC,OAAOC,iBAAiB,GAAGC,eAAAA,mBAAkC;AAC9F,GAFiBJ,mBAAAA,iBAAAA,CAAAA,EAAAA;;;ACJjB,SAASK,cAAcC,aAAaC,cAAcC,cAAcC,cAAcC,UAAAA,eAAc;AAC5F,SAASC,oBAAqC;AAC9C,SAASC,gBAAgB;AACzB,SAASC,oBAAoBC,oBAAoB;AACjD,SAASC,mBAAmBC,oBAAoB;AAChD,SAASC,wBAAwB;AACjC,SAASC,gBAAgBC,0BAA0B;AACnD,SAASC,gBAAgB;AAiBlB,IAAMC,iBAAiB,MAC5BC,aAAaC,MAAM;EACjBC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOC;IACpBC,UAAU,MAAMC,YAAYC,aAAaC,cAAc;SAAIC;SAAiBC;KAAmB;EACjG,CAAA;EACAV,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOQ;IACpBN,UAAUO;EACZ,CAAA;EACAZ,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;;;;IAIdC,aAAaC,QAAOQ;IACpBN,UAAUQ;EACZ,CAAA;EACAb,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOW;IACpBT,UAAU,MACRC,YAAYC,aAAaQ,UAAU;MACjCd,IAAIe,aAAaC;MACjBC,UAAU;QACRC,OAAO,CAACC,WACNC,aAAaL,cAAcI,MAAAA,IAAUA,OAAOE,QAAQF,OAAOG,eAAeC;QAC5EC,MAAM;QACNC,YAAY;UACVC,kBAAkB;QACpB;;QAEAC,gBAAgB,OAAOC,QACrB,MAAMC,SAASC,QAAoB;UAACF,IAAIG;aAAYH,IAAII;SAAQ;QAClEC;MACF;IACF,CAAA;EACJ,CAAA;EACAlC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaiC,aAAaC;IAC1B/B,UAAU,MACRC,YACE+B,kBAAkBC,YAClBC,iBAAiB;MACfC,cAAcxB;MACdyB,WAAW,CAACC,GAAG,EAAEC,MAAK,MAAOC,aAAaC,eAAeC,QAAQ;QAAEC,SAASJ,MAAM1C;MAAG,CAAA;IACvF,CAAA,CAAA;EAEN,CAAA;EACAD,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaiC,aAAaC;IAC1B/B,UAAU,MAAMC,YAAY0C,mBAAmBC,QAAQ;MAACC;KAAS;EACnE,CAAA;EACAlD,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOgD;;IAEpBC,iBAAiB;MAACC,eAAeC;;IACjCjD,UAAUkD;EACZ,CAAA;EACAvD,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOqD;IACpBnD,UAAUoD;EACZ,CAAA;EACAzD,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOuD;IACpBrD,UAAUsD;EACZ,CAAA;EACA3D,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAa0D,aAAaC;IAC1BxD,UAAUyD;EACZ,CAAA;EACA9D,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAO4D;IACpB1D,UAAU2D;EACZ,CAAA;CACD;",
6
+ "names": ["Events", "MarkdownEvents", "SetupExtensions", "Events", "createStateEvent", "MARKDOWN_PLUGIN", "Capabilities", "contributes", "createIntent", "defineModule", "definePlugin", "Events", "isInstanceOf", "RefArray", "ClientCapabilities", "ClientEvents", "SpaceCapabilities", "ThreadEvents", "defineObjectForm", "translations", "editorTranslations", "TextType", "MarkdownPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "editorTranslations", "SetupSettings", "MarkdownSettings", "MarkdownState", "SetupMetadata", "Metadata", "DocumentType", "typename", "metadata", "label", "object", "isInstanceOf", "name", "fallbackName", "undefined", "icon", "graphProps", "managesAutofocus", "loadReferences", "doc", "RefArray", "loadAll", "content", "threads", "serializer", "ClientEvents", "SetupSchema", "SpaceCapabilities", "ObjectForm", "defineObjectForm", "objectSchema", "getIntent", "_", "space", "createIntent", "MarkdownAction", "Create", "spaceId", "ClientCapabilities", "Schema", "TextType", "SetupReactSurface", "activatesBefore", "MarkdownEvents", "SetupExtensions", "ReactSurface", "SetupIntentResolver", "IntentResolver", "AppGraphReady", "AppGraphSerializer", "ThreadEvents", "SetupThread", "Thread", "SetupArtifactDefinition", "ArtifactDefinition"]
7
7
  }
@@ -0,0 +1,51 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ MarkdownCapabilities
4
+ } from "./chunk-ETXPC5VP.mjs";
5
+ import {
6
+ DocumentType,
7
+ MarkdownAction
8
+ } from "./chunk-4AM4VU3Y.mjs";
9
+ import "./chunk-RX63ZNML.mjs";
10
+
11
+ // packages/plugins/plugin-markdown/src/capabilities/intent-resolver.ts
12
+ import { Capabilities, contributes, createResolver } from "@dxos/app-framework";
13
+ import { ObjectId } from "@dxos/echo-schema";
14
+ import { DXN, QueueSubspaceTags } from "@dxos/keys";
15
+ import { makeRef, create, refFromDXN } from "@dxos/live-object";
16
+ import { TextType } from "@dxos/schema";
17
+ var intent_resolver_default = (context) => contributes(Capabilities.IntentResolver, [
18
+ createResolver({
19
+ intent: MarkdownAction.Create,
20
+ resolve: ({ name, spaceId, content }) => {
21
+ const doc = create(DocumentType, {
22
+ name,
23
+ content: makeRef(create(TextType, {
24
+ content: content ?? ""
25
+ })),
26
+ assistantChatQueue: refFromDXN(new DXN(DXN.kind.QUEUE, [
27
+ QueueSubspaceTags.DATA,
28
+ spaceId,
29
+ ObjectId.random()
30
+ ])),
31
+ threads: []
32
+ });
33
+ return {
34
+ data: {
35
+ object: doc
36
+ }
37
+ };
38
+ }
39
+ }),
40
+ createResolver({
41
+ intent: MarkdownAction.SetViewMode,
42
+ resolve: ({ id, viewMode }) => {
43
+ const { state } = context.requestCapability(MarkdownCapabilities.State);
44
+ state.viewMode[id] = viewMode;
45
+ }
46
+ })
47
+ ]);
48
+ export {
49
+ intent_resolver_default as default
50
+ };
51
+ //# sourceMappingURL=intent-resolver-7HOMUVHR.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/intent-resolver.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, createResolver, type PluginsContext } from '@dxos/app-framework';\nimport { ObjectId } from '@dxos/echo-schema';\nimport { DXN, QueueSubspaceTags } from '@dxos/keys';\nimport { makeRef, create, refFromDXN } from '@dxos/live-object';\nimport { TextType } from '@dxos/schema';\n\nimport { MarkdownCapabilities } from './capabilities';\nimport { DocumentType, MarkdownAction } from '../types';\n\nexport default (context: PluginsContext) =>\n contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: MarkdownAction.Create,\n resolve: ({ name, spaceId, content }) => {\n const doc = create(DocumentType, {\n name,\n content: makeRef(create(TextType, { content: content ?? '' })),\n assistantChatQueue: refFromDXN(new DXN(DXN.kind.QUEUE, [QueueSubspaceTags.DATA, spaceId, ObjectId.random()])),\n threads: [],\n });\n\n return { data: { object: doc } };\n },\n }),\n createResolver({\n intent: MarkdownAction.SetViewMode,\n resolve: ({ id, viewMode }) => {\n const { state } = context.requestCapability(MarkdownCapabilities.State);\n state.viewMode[id] = viewMode;\n },\n }),\n ]);\n"],
5
+ "mappings": ";;;;;;;;;;;AAIA,SAASA,cAAcC,aAAaC,sBAA2C;AAC/E,SAASC,gBAAgB;AACzB,SAASC,KAAKC,yBAAyB;AACvC,SAASC,SAASC,QAAQC,kBAAkB;AAC5C,SAASC,gBAAgB;AAKzB,IAAA,0BAAe,CAACC,YACdC,YAAYC,aAAaC,gBAAgB;EACvCC,eAAe;IACbC,QAAQC,eAAeC;IACvBC,SAAS,CAAC,EAAEC,MAAMC,SAASC,QAAO,MAAE;AAClC,YAAMC,MAAMC,OAAOC,cAAc;QAC/BL;QACAE,SAASI,QAAQF,OAAOG,UAAU;UAAEL,SAASA,WAAW;QAAG,CAAA,CAAA;QAC3DM,oBAAoBC,WAAW,IAAIC,IAAIA,IAAIC,KAAKC,OAAO;UAACC,kBAAkBC;UAAMb;UAASc,SAASC,OAAM;SAAG,CAAA;QAC3GC,SAAS,CAAA;MACX,CAAA;AAEA,aAAO;QAAEC,MAAM;UAAEC,QAAQhB;QAAI;MAAE;IACjC;EACF,CAAA;EACAR,eAAe;IACbC,QAAQC,eAAeuB;IACvBrB,SAAS,CAAC,EAAEsB,IAAIC,SAAQ,MAAE;AACxB,YAAM,EAAEC,MAAK,IAAKhC,QAAQiC,kBAAkBC,qBAAqBC,KAAK;AACtEH,YAAMD,SAASD,EAAAA,IAAMC;IACvB;EACF,CAAA;CACD;",
6
+ "names": ["Capabilities", "contributes", "createResolver", "ObjectId", "DXN", "QueueSubspaceTags", "makeRef", "create", "refFromDXN", "TextType", "context", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "MarkdownAction", "Create", "resolve", "name", "spaceId", "content", "doc", "create", "DocumentType", "makeRef", "TextType", "assistantChatQueue", "refFromDXN", "DXN", "kind", "QUEUE", "QueueSubspaceTags", "DATA", "ObjectId", "random", "threads", "data", "object", "SetViewMode", "id", "viewMode", "state", "requestCapability", "MarkdownCapabilities", "State"]
7
+ }