@dxos/plugin-markdown 0.8.4-main.e098934 → 0.8.4-main.ead640a

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 (137) hide show
  1. package/dist/lib/browser/{MarkdownCard-JLUQITYK.mjs → MarkdownCard-AGWOTODZ.mjs} +20 -17
  2. package/dist/lib/browser/MarkdownCard-AGWOTODZ.mjs.map +7 -0
  3. package/dist/lib/browser/{MarkdownContainer-HMPNQMNG.mjs → MarkdownContainer-MV2UNAUV.mjs} +52 -52
  4. package/dist/lib/browser/MarkdownContainer-MV2UNAUV.mjs.map +7 -0
  5. package/dist/lib/browser/{anchor-sort-E33BSTYF.mjs → anchor-sort-YWJI3BKT.mjs} +4 -4
  6. package/dist/lib/browser/{anchor-sort-E33BSTYF.mjs.map → anchor-sort-YWJI3BKT.mjs.map} +1 -1
  7. package/dist/lib/browser/{app-graph-serializer-OX62DNPT.mjs → app-graph-serializer-KYDFCUOW.mjs} +7 -7
  8. package/dist/lib/browser/app-graph-serializer-KYDFCUOW.mjs.map +7 -0
  9. package/dist/lib/browser/{blueprint-definition-5YKFUHRU.mjs → blueprint-definition-BHRMFZAC.mjs} +3 -3
  10. package/dist/lib/browser/{chunk-LAVZ2W6X.mjs → chunk-6KU5DKP7.mjs} +6 -5
  11. package/dist/lib/browser/chunk-6KU5DKP7.mjs.map +7 -0
  12. package/dist/lib/browser/{chunk-F6JJLKLN.mjs → chunk-HBBEHOP3.mjs} +12 -8
  13. package/dist/lib/browser/chunk-HBBEHOP3.mjs.map +7 -0
  14. package/dist/lib/browser/{chunk-Z7P6JGGW.mjs → chunk-O6XUPW6S.mjs} +2 -2
  15. package/dist/lib/browser/{chunk-BEE7VQPU.mjs → chunk-XMT6PMU5.mjs} +6 -5
  16. package/dist/lib/browser/chunk-XMT6PMU5.mjs.map +7 -0
  17. package/dist/lib/browser/chunk-Z5PDJNBV.mjs +22 -0
  18. package/dist/lib/browser/index.mjs +9 -8
  19. package/dist/lib/browser/index.mjs.map +3 -3
  20. package/dist/lib/browser/{intent-resolver-WDDH56JC.mjs → intent-resolver-XHVCZZHU.mjs} +5 -5
  21. package/dist/lib/browser/intent-resolver-XHVCZZHU.mjs.map +7 -0
  22. package/dist/lib/browser/meta.json +1 -1
  23. package/dist/lib/browser/{react-surface-NY5K2I5R.mjs → react-surface-3A2GO3BN.mjs} +7 -7
  24. package/dist/lib/browser/{react-surface-NY5K2I5R.mjs.map → react-surface-3A2GO3BN.mjs.map} +1 -1
  25. package/dist/lib/browser/{settings-AABBTB4Q.mjs → settings-XY265Y2Q.mjs} +4 -4
  26. package/dist/lib/browser/{settings-AABBTB4Q.mjs.map → settings-XY265Y2Q.mjs.map} +1 -1
  27. package/dist/lib/browser/{state-FTHQQX7V.mjs → state-6QODXCSZ.mjs} +3 -3
  28. package/dist/lib/browser/{state-FTHQQX7V.mjs.map → state-6QODXCSZ.mjs.map} +1 -1
  29. package/dist/lib/browser/{toolkit-2AJTHG74.mjs → toolkit-YA65QX2S.mjs} +15 -13
  30. package/dist/lib/browser/toolkit-YA65QX2S.mjs.map +7 -0
  31. package/dist/lib/browser/types/index.mjs +1 -1
  32. package/dist/lib/node-esm/{MarkdownCard-XL5EVSJ7.mjs → MarkdownCard-B2IWTFOC.mjs} +20 -17
  33. package/dist/lib/node-esm/MarkdownCard-B2IWTFOC.mjs.map +7 -0
  34. package/dist/lib/node-esm/{MarkdownContainer-5FTROSXN.mjs → MarkdownContainer-J2R3DLCQ.mjs} +52 -52
  35. package/dist/lib/node-esm/MarkdownContainer-J2R3DLCQ.mjs.map +7 -0
  36. package/dist/lib/node-esm/{anchor-sort-ALP2NH24.mjs → anchor-sort-FCRYL2FX.mjs} +4 -4
  37. package/dist/lib/node-esm/{anchor-sort-ALP2NH24.mjs.map → anchor-sort-FCRYL2FX.mjs.map} +1 -1
  38. package/dist/lib/node-esm/{app-graph-serializer-56TD3BMX.mjs → app-graph-serializer-FAUQM3BH.mjs} +7 -7
  39. package/dist/lib/node-esm/app-graph-serializer-FAUQM3BH.mjs.map +7 -0
  40. package/dist/lib/node-esm/{blueprint-definition-GVW67KGV.mjs → blueprint-definition-XYFKMIDR.mjs} +3 -3
  41. package/dist/lib/node-esm/chunk-7RDNIMTF.mjs +24 -0
  42. package/dist/lib/node-esm/{chunk-DVK63TD3.mjs → chunk-FVI7LPC3.mjs} +12 -8
  43. package/dist/lib/node-esm/chunk-FVI7LPC3.mjs.map +7 -0
  44. package/dist/lib/node-esm/{chunk-FXILAQ5F.mjs → chunk-FWZKC6X5.mjs} +6 -5
  45. package/dist/lib/node-esm/chunk-FWZKC6X5.mjs.map +7 -0
  46. package/dist/lib/node-esm/{chunk-J7A6TUB2.mjs → chunk-XO3IEQJE.mjs} +2 -2
  47. package/dist/lib/node-esm/{chunk-O6EXWGGS.mjs → chunk-ZBXV4ON7.mjs} +6 -5
  48. package/dist/lib/node-esm/chunk-ZBXV4ON7.mjs.map +7 -0
  49. package/dist/lib/node-esm/index.mjs +9 -8
  50. package/dist/lib/node-esm/index.mjs.map +3 -3
  51. package/dist/lib/node-esm/{intent-resolver-2I5HKCUU.mjs → intent-resolver-7A2EXGZQ.mjs} +5 -5
  52. package/dist/lib/node-esm/intent-resolver-7A2EXGZQ.mjs.map +7 -0
  53. package/dist/lib/node-esm/meta.json +1 -1
  54. package/dist/lib/node-esm/{react-surface-AUWSLYJS.mjs → react-surface-RCLL5WVQ.mjs} +7 -7
  55. package/dist/lib/node-esm/{react-surface-AUWSLYJS.mjs.map → react-surface-RCLL5WVQ.mjs.map} +1 -1
  56. package/dist/lib/node-esm/{settings-CXGR6DH4.mjs → settings-H3UDD3KO.mjs} +4 -4
  57. package/dist/lib/node-esm/{settings-CXGR6DH4.mjs.map → settings-H3UDD3KO.mjs.map} +1 -1
  58. package/dist/lib/node-esm/{state-NWMQ3XAI.mjs → state-W3PECOJX.mjs} +3 -3
  59. package/dist/lib/node-esm/{state-NWMQ3XAI.mjs.map → state-W3PECOJX.mjs.map} +1 -1
  60. package/dist/lib/node-esm/{toolkit-RC44I2MI.mjs → toolkit-HSIKUGNK.mjs} +15 -13
  61. package/dist/lib/node-esm/toolkit-HSIKUGNK.mjs.map +7 -0
  62. package/dist/lib/node-esm/types/index.mjs +1 -1
  63. package/dist/types/src/MarkdownPlugin.d.ts +1 -1
  64. package/dist/types/src/MarkdownPlugin.d.ts.map +1 -1
  65. package/dist/types/src/capabilities/artifact-definition.d.ts.map +1 -1
  66. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  67. package/dist/types/src/capabilities/toolkit.d.ts.map +1 -1
  68. package/dist/types/src/components/MarkdownCard/MarkdownCard.d.ts.map +1 -1
  69. package/dist/types/src/components/MarkdownCard/MarkdownCard.stories.d.ts +0 -1
  70. package/dist/types/src/components/MarkdownCard/MarkdownCard.stories.d.ts.map +1 -1
  71. package/dist/types/src/components/MarkdownContainer.d.ts.map +1 -1
  72. package/dist/types/src/components/MarkdownContainer.stories.d.ts +4 -4
  73. package/dist/types/src/components/MarkdownContainer.stories.d.ts.map +1 -1
  74. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts +4 -4
  75. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts.map +1 -1
  76. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts +1 -1
  77. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts.map +1 -1
  78. package/dist/types/src/components/Suggestions.stories.d.ts +1 -2
  79. package/dist/types/src/components/Suggestions.stories.d.ts.map +1 -1
  80. package/dist/types/src/components/Toolbar.stories.d.ts +1 -1
  81. package/dist/types/src/components/Toolbar.stories.d.ts.map +1 -1
  82. package/dist/types/src/functions/diff.d.ts.map +1 -1
  83. package/dist/types/src/functions/open.d.ts.map +1 -1
  84. package/dist/types/src/hooks/useSelectCurrentThread.d.ts +1 -1
  85. package/dist/types/src/hooks/useSelectCurrentThread.d.ts.map +1 -1
  86. package/dist/types/src/types/Markdown.d.ts +5 -3
  87. package/dist/types/src/types/Markdown.d.ts.map +1 -1
  88. package/dist/types/src/types/MarkdownAction.d.ts +2 -1
  89. package/dist/types/src/types/MarkdownAction.d.ts.map +1 -1
  90. package/dist/types/src/util.d.ts +1 -1
  91. package/dist/types/src/util.d.ts.map +1 -1
  92. package/dist/types/tsconfig.tsbuildinfo +1 -1
  93. package/package.json +54 -54
  94. package/src/MarkdownPlugin.tsx +98 -98
  95. package/src/capabilities/app-graph-serializer.ts +2 -2
  96. package/src/capabilities/artifact-definition.ts +3 -2
  97. package/src/capabilities/intent-resolver.ts +2 -1
  98. package/src/capabilities/toolkit.ts +9 -7
  99. package/src/components/MarkdownCard/MarkdownCard.stories.tsx +3 -6
  100. package/src/components/MarkdownCard/MarkdownCard.tsx +17 -16
  101. package/src/components/MarkdownContainer.stories.tsx +42 -33
  102. package/src/components/MarkdownContainer.tsx +15 -13
  103. package/src/components/MarkdownEditor/MarkdownEditor.stories.tsx +11 -10
  104. package/src/components/MarkdownEditor/MarkdownEditor.tsx +35 -33
  105. package/src/components/Suggestions.stories.tsx +27 -26
  106. package/src/components/Toolbar.stories.tsx +5 -5
  107. package/src/extensions.tsx +3 -3
  108. package/src/functions/diff.ts +4 -2
  109. package/src/functions/open.ts +4 -2
  110. package/src/hooks/useSelectCurrentThread.tsx +2 -2
  111. package/src/types/Markdown.ts +4 -2
  112. package/src/types/MarkdownAction.ts +1 -1
  113. package/src/util.tsx +8 -2
  114. package/dist/lib/browser/MarkdownCard-JLUQITYK.mjs.map +0 -7
  115. package/dist/lib/browser/MarkdownContainer-HMPNQMNG.mjs.map +0 -7
  116. package/dist/lib/browser/app-graph-serializer-OX62DNPT.mjs.map +0 -7
  117. package/dist/lib/browser/chunk-BEE7VQPU.mjs.map +0 -7
  118. package/dist/lib/browser/chunk-F6JJLKLN.mjs.map +0 -7
  119. package/dist/lib/browser/chunk-LAVZ2W6X.mjs.map +0 -7
  120. package/dist/lib/browser/chunk-XE66SH4O.mjs +0 -22
  121. package/dist/lib/browser/intent-resolver-WDDH56JC.mjs.map +0 -7
  122. package/dist/lib/browser/toolkit-2AJTHG74.mjs.map +0 -7
  123. package/dist/lib/node-esm/MarkdownCard-XL5EVSJ7.mjs.map +0 -7
  124. package/dist/lib/node-esm/MarkdownContainer-5FTROSXN.mjs.map +0 -7
  125. package/dist/lib/node-esm/app-graph-serializer-56TD3BMX.mjs.map +0 -7
  126. package/dist/lib/node-esm/chunk-DVK63TD3.mjs.map +0 -7
  127. package/dist/lib/node-esm/chunk-FXILAQ5F.mjs.map +0 -7
  128. package/dist/lib/node-esm/chunk-O6EXWGGS.mjs.map +0 -7
  129. package/dist/lib/node-esm/chunk-Q2BREK2M.mjs +0 -24
  130. package/dist/lib/node-esm/intent-resolver-2I5HKCUU.mjs.map +0 -7
  131. package/dist/lib/node-esm/toolkit-RC44I2MI.mjs.map +0 -7
  132. /package/dist/lib/browser/{blueprint-definition-5YKFUHRU.mjs.map → blueprint-definition-BHRMFZAC.mjs.map} +0 -0
  133. /package/dist/lib/browser/{chunk-Z7P6JGGW.mjs.map → chunk-O6XUPW6S.mjs.map} +0 -0
  134. /package/dist/lib/browser/{chunk-XE66SH4O.mjs.map → chunk-Z5PDJNBV.mjs.map} +0 -0
  135. /package/dist/lib/node-esm/{blueprint-definition-GVW67KGV.mjs.map → blueprint-definition-XYFKMIDR.mjs.map} +0 -0
  136. /package/dist/lib/node-esm/{chunk-Q2BREK2M.mjs.map → chunk-7RDNIMTF.mjs.map} +0 -0
  137. /package/dist/lib/node-esm/{chunk-J7A6TUB2.mjs.map → chunk-XO3IEQJE.mjs.map} +0 -0
@@ -1,7 +1,7 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  Markdown_exports
4
- } from "./chunk-FXILAQ5F.mjs";
4
+ } from "./chunk-FWZKC6X5.mjs";
5
5
 
6
6
  // src/capabilities/blueprint-definition.ts
7
7
  import { Capabilities, contributes } from "@dxos/app-framework";
@@ -9,13 +9,15 @@ import { Blueprint, Template } from "@dxos/blueprints";
9
9
  import { trim as trim2 } from "@dxos/util";
10
10
 
11
11
  // src/functions/diff.ts
12
- import { Effect, Schema } from "effect";
12
+ import * as Effect from "effect/Effect";
13
+ import * as Schema from "effect/Schema";
13
14
  import { ArtifactId, applyDiffs } from "@dxos/assistant";
14
15
  import { createDocAccessor } from "@dxos/echo-db";
15
16
  import { DatabaseService, defineFunction } from "@dxos/functions";
16
17
  import { trim } from "@dxos/util";
17
18
  var diff_default = defineFunction({
18
- name: "dxos.org/function/markdown/diff",
19
+ key: "dxos.org/function/markdown/diff",
20
+ name: "Diff",
19
21
  description: trim`
20
22
  Applies a set of diffs to the markdown document.
21
23
  `,
@@ -39,11 +41,13 @@ var diff_default = defineFunction({
39
41
  });
40
42
 
41
43
  // src/functions/open.ts
42
- import { Effect as Effect2, Schema as Schema2 } from "effect";
44
+ import * as Effect2 from "effect/Effect";
45
+ import * as Schema2 from "effect/Schema";
43
46
  import { ArtifactId as ArtifactId2 } from "@dxos/assistant";
44
47
  import { DatabaseService as DatabaseService2, defineFunction as defineFunction2 } from "@dxos/functions";
45
48
  var open_default = defineFunction2({
46
- name: "dxos.org/function/markdown/open",
49
+ key: "dxos.org/function/markdown/open",
50
+ name: "Open",
47
51
  description: "Opens and reads the contents of a new markdown document.",
48
52
  inputSchema: Schema2.Struct({
49
53
  id: ArtifactId2.annotations({
@@ -72,7 +76,7 @@ var tools = [
72
76
  "create-document"
73
77
  ];
74
78
  var BLUEPRINT_KEY = "dxos.org/blueprint/markdown";
75
- var blueprint_definition_default = () => [
79
+ var blueprint_definition_default = (() => [
76
80
  contributes(Capabilities.Functions, functions),
77
81
  contributes(Capabilities.BlueprintDefinition, Blueprint.make({
78
82
  key: BLUEPRINT_KEY,
@@ -94,10 +98,10 @@ var blueprint_definition_default = () => [
94
98
  `
95
99
  })
96
100
  }))
97
- ];
101
+ ]);
98
102
 
99
103
  export {
100
104
  BLUEPRINT_KEY,
101
105
  blueprint_definition_default
102
106
  };
103
- //# sourceMappingURL=chunk-DVK63TD3.mjs.map
107
+ //# sourceMappingURL=chunk-FVI7LPC3.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/blueprint-definition.ts", "../../../src/functions/diff.ts", "../../../src/functions/open.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, type Capability, contributes } from '@dxos/app-framework';\nimport { Blueprint, Template } from '@dxos/blueprints';\nimport { type FunctionDefinition } from '@dxos/functions';\nimport { trim } from '@dxos/util';\n\nimport { diff, open } from '../functions';\n\nconst functions: FunctionDefinition[] = [diff, open];\nconst tools = ['add-proposals', 'create-document'];\n\nexport const BLUEPRINT_KEY = 'dxos.org/blueprint/markdown';\n\nexport default (): Capability<any>[] => [\n contributes(Capabilities.Functions, functions),\n contributes(\n Capabilities.BlueprintDefinition,\n Blueprint.make({\n key: BLUEPRINT_KEY,\n name: 'Markdown',\n tools: Blueprint.toolDefinitions({ functions, tools }),\n instructions: Template.make({\n source: trim`\n You can create and update markdown documents.\n When asked to edit or update documents return updates as a set of compact diff string pairs.\n For each diff, respond with the smallest possible matching span.\n For example:\n - \"There is a tyop in this sentence.\"\n + \"There is a typo in this sentence.\"\n - \"This id goof.\"\n + \"This is good.\"\n `,\n }),\n }),\n ),\n];\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Schema from 'effect/Schema';\n\nimport { ArtifactId, applyDiffs } from '@dxos/assistant';\nimport { createDocAccessor } from '@dxos/echo-db';\nimport { DatabaseService, defineFunction } from '@dxos/functions';\nimport { trim } from '@dxos/util';\n\nimport { Markdown } from '../types';\n\n// TODO(wittjosiah): Reconcile with ThreadAction.AddProposal.\nexport default defineFunction({\n key: 'dxos.org/function/markdown/diff',\n name: 'Diff',\n description: trim`\n Applies a set of diffs to the markdown document.\n `,\n inputSchema: Schema.Struct({\n id: ArtifactId.annotations({\n description: 'The ID of the markdown document.',\n }),\n diffs: Schema.Array(Schema.String).annotations({\n description: 'The diffs to apply to the document.',\n }),\n }),\n outputSchema: Schema.Void,\n handler: Effect.fn(function* ({ data: { id, diffs } }) {\n const object = yield* DatabaseService.resolve(ArtifactId.toDXN(id), Markdown.Document);\n const content = yield* Effect.promise(() => object.content.load());\n const accessor = createDocAccessor(content, ['content']);\n applyDiffs(accessor, diffs);\n }),\n});\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Schema from 'effect/Schema';\n\nimport { ArtifactId } from '@dxos/assistant';\nimport { DatabaseService, defineFunction } from '@dxos/functions';\n\nimport { Markdown } from '../types';\n\nexport default defineFunction({\n key: 'dxos.org/function/markdown/open',\n name: 'Open',\n description: 'Opens and reads the contents of a new markdown document.',\n inputSchema: Schema.Struct({\n id: ArtifactId.annotations({\n description: 'The ID of the markdown document.',\n }),\n }),\n outputSchema: Schema.Struct({\n content: Schema.String,\n }),\n handler: Effect.fn(function* ({ data: { id } }) {\n const object = yield* DatabaseService.resolve(ArtifactId.toDXN(id), Markdown.Document);\n const { content } = yield* Effect.promise(() => object.content.load());\n return {\n content,\n };\n }),\n});\n"],
5
+ "mappings": ";;;;;;AAIA,SAASA,cAA+BC,mBAAmB;AAC3D,SAASC,WAAWC,gBAAgB;AAEpC,SAASC,QAAAA,aAAY;;;ACHrB,YAAYC,YAAY;AACxB,YAAYC,YAAY;AAExB,SAASC,YAAYC,kBAAkB;AACvC,SAASC,yBAAyB;AAClC,SAASC,iBAAiBC,sBAAsB;AAChD,SAASC,YAAY;AAKrB,IAAA,eAAeC,eAAe;EAC5BC,KAAK;EACLC,MAAM;EACNC,aAAaC;;;EAGbC,aAAoBC,cAAO;IACzBC,IAAIC,WAAWC,YAAY;MACzBN,aAAa;IACf,CAAA;IACAO,OAAcC,aAAaC,aAAM,EAAEH,YAAY;MAC7CN,aAAa;IACf,CAAA;EACF,CAAA;EACAU,cAAqBC;EACrBC,SAAgBC,UAAG,WAAW,EAAEC,MAAM,EAAEV,IAAIG,MAAK,EAAE,GAAE;AACnD,UAAMQ,SAAS,OAAOC,gBAAgBC,QAAQZ,WAAWa,MAAMd,EAAAA,GAAKe,iBAASC,QAAQ;AACrF,UAAMC,UAAU,OAAcC,eAAQ,MAAMP,OAAOM,QAAQE,KAAI,CAAA;AAC/D,UAAMC,WAAWC,kBAAkBJ,SAAS;MAAC;KAAU;AACvDK,eAAWF,UAAUjB,KAAAA;EACvB,CAAA;AACF,CAAA;;;AChCA,YAAYoB,aAAY;AACxB,YAAYC,aAAY;AAExB,SAASC,cAAAA,mBAAkB;AAC3B,SAASC,mBAAAA,kBAAiBC,kBAAAA,uBAAsB;AAIhD,IAAA,eAAeC,gBAAe;EAC5BC,KAAK;EACLC,MAAM;EACNC,aAAa;EACbC,aAAoBC,eAAO;IACzBC,IAAIC,YAAWC,YAAY;MACzBL,aAAa;IACf,CAAA;EACF,CAAA;EACAM,cAAqBJ,eAAO;IAC1BK,SAAgBC;EAClB,CAAA;EACAC,SAAgBC,WAAG,WAAW,EAAEC,MAAM,EAAER,GAAE,EAAE,GAAE;AAC5C,UAAMS,SAAS,OAAOC,iBAAgBC,QAAQV,YAAWW,MAAMZ,EAAAA,GAAKa,iBAASC,QAAQ;AACrF,UAAM,EAAEV,QAAO,IAAK,OAAcW,gBAAQ,MAAMN,OAAOL,QAAQY,KAAI,CAAA;AACnE,WAAO;MACLZ;IACF;EACF,CAAA;AACF,CAAA;;;AFpBA,IAAMa,YAAkC;EAACC;EAAMC;;AAC/C,IAAMC,QAAQ;EAAC;EAAiB;;AAEzB,IAAMC,gBAAgB;AAE7B,IAAA,gCAAe,MAAyB;EACtCC,YAAYC,aAAaC,WAAWP,SAAAA;EACpCK,YACEC,aAAaE,qBACbC,UAAUC,KAAK;IACbC,KAAKP;IACLQ,MAAM;IACNT,OAAOM,UAAUI,gBAAgB;MAAEb;MAAWG;IAAM,CAAA;IACpDW,cAAcC,SAASL,KAAK;MAC1BM,QAAQC;;;;;;;;;;IAUV,CAAA;EACF,CAAA,CAAA;;",
6
+ "names": ["Capabilities", "contributes", "Blueprint", "Template", "trim", "Effect", "Schema", "ArtifactId", "applyDiffs", "createDocAccessor", "DatabaseService", "defineFunction", "trim", "defineFunction", "key", "name", "description", "trim", "inputSchema", "Struct", "id", "ArtifactId", "annotations", "diffs", "Array", "String", "outputSchema", "Void", "handler", "fn", "data", "object", "DatabaseService", "resolve", "toDXN", "Markdown", "Document", "content", "promise", "load", "accessor", "createDocAccessor", "applyDiffs", "Effect", "Schema", "ArtifactId", "DatabaseService", "defineFunction", "defineFunction", "key", "name", "description", "inputSchema", "Struct", "id", "ArtifactId", "annotations", "outputSchema", "content", "String", "handler", "fn", "data", "object", "DatabaseService", "resolve", "toDXN", "Markdown", "Document", "promise", "load", "functions", "diff", "open", "tools", "BLUEPRINT_KEY", "contributes", "Capabilities", "Functions", "BlueprintDefinition", "Blueprint", "make", "key", "name", "toolDefinitions", "instructions", "Template", "source", "trim"]
7
+ }
@@ -10,7 +10,7 @@ __export(MarkdownAction_exports, {
10
10
  Create: () => Create,
11
11
  SetViewMode: () => SetViewMode
12
12
  });
13
- import { Schema as Schema2 } from "effect";
13
+ import * as Schema2 from "effect/Schema";
14
14
  import { EditorViewMode as EditorViewMode2 } from "@dxos/react-ui-editor/types";
15
15
 
16
16
  // src/types/Markdown.ts
@@ -20,13 +20,14 @@ __export(Markdown_exports, {
20
20
  Settings: () => Settings,
21
21
  makeDocument: () => makeDocument
22
22
  });
23
- import { Schema } from "effect";
23
+ import * as Schema from "effect/Schema";
24
24
  import { Obj, Ref, Type } from "@dxos/echo";
25
- import { LabelAnnotation } from "@dxos/echo-schema";
25
+ import { DescriptionAnnotation, LabelAnnotation } from "@dxos/echo/internal";
26
26
  import { EditorInputMode, EditorViewMode } from "@dxos/react-ui-editor/types";
27
27
  import { DataType, ItemAnnotation } from "@dxos/schema";
28
28
  var Document = Schema.Struct({
29
29
  name: Schema.optional(Schema.String),
30
+ description: Schema.optional(Schema.String),
30
31
  fallbackName: Schema.optional(Schema.String),
31
32
  content: Type.Ref(DataType.Text)
32
33
  }).pipe(Type.Obj({
@@ -35,7 +36,7 @@ var Document = Schema.Struct({
35
36
  }), LabelAnnotation.set([
36
37
  "name",
37
38
  "fallbackName"
38
- ]), ItemAnnotation.set(true));
39
+ ]), DescriptionAnnotation.set("description"), ItemAnnotation.set(true));
39
40
  var makeDocument = ({ content = "", ...props } = {}) => Obj.make(Document, {
40
41
  ...props,
41
42
  content: Ref.make(DataType.makeText(content))
@@ -76,4 +77,4 @@ export {
76
77
  Markdown_exports,
77
78
  MarkdownAction_exports
78
79
  };
79
- //# sourceMappingURL=chunk-FXILAQ5F.mjs.map
80
+ //# sourceMappingURL=chunk-FWZKC6X5.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 * as Schema from 'effect/Schema';\n\nimport { EditorViewMode } from '@dxos/react-ui-editor/types';\n\nimport { meta } from '../meta';\n\nimport { Document } from './Markdown';\n\nexport class Create extends Schema.TaggedClass<Create>()(`${meta.id}/action/create`, {\n input: Schema.Struct({\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>()(`${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 * as Schema from 'effect/Schema';\n\nimport { Obj, Ref, Type } from '@dxos/echo';\nimport { DescriptionAnnotation, LabelAnnotation } from '@dxos/echo/internal';\nimport { EditorInputMode, EditorViewMode } from '@dxos/react-ui-editor/types';\nimport { DataType, ItemAnnotation } from '@dxos/schema';\n\n/**\n * Document Item type.\n */\nexport const Document = Schema.Struct({\n name: Schema.optional(Schema.String),\n description: 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 DescriptionAnnotation.set('description'),\n ItemAnnotation.set(true),\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,YAAYA,aAAY;AAExB,SAASC,kBAAAA,uBAAsB;;;ACN/B;;;;;;AAIA,YAAYC,YAAY;AAExB,SAASC,KAAKC,KAAKC,YAAY;AAC/B,SAASC,uBAAuBC,uBAAuB;AACvD,SAASC,iBAAiBC,sBAAsB;AAChD,SAASC,UAAUC,sBAAsB;AAKlC,IAAMC,WAAkBC,cAAO;EACpCC,MAAaC,gBAAgBC,aAAM;EACnCC,aAAoBF,gBAAgBC,aAAM;EAC1CE,cAAqBH,gBAAgBC,aAAM;EAC3CG,SAASC,KAAKC,IAAIC,SAASC,IAAI;AACjC,CAAA,EAAGC,KACDJ,KAAKK,IAAI;EACPC,UAAU;EACVC,SAAS;AACX,CAAA,GACAC,gBAAgBC,IAAI;EAAC;EAAQ;CAAe,GAC5CC,sBAAsBD,IAAI,aAAA,GAC1BE,eAAeF,IAAI,IAAA,CAAA;AAQd,IAAMG,eAAe,CAAC,EAC3Bb,UAAU,IACV,GAAGc,MAAAA,IACiE,CAAC,MACrER,IAAIS,KAAKtB,UAAU;EAAE,GAAGqB;EAAOd,SAASE,IAAIa,KAAKZ,SAASa,SAAShB,OAAAA,CAAAA;AAAU,CAAA;AAKxE,IAAMiB,WAAkBC,eACtBxB,cAAO;EACZyB,iBAAiBC;EACjBC,iBAAwBzB,gBAAS0B,eAAAA;EACjCC,cAAqB3B,gBAAgB4B,cAAO;EAC5CC,OAAc7B,gBAAgB4B,cAAO;EACrCE,SAAgB9B,gBAAgB4B,cAAO;EACvCG,YAAmB/B,gBAAgBC,aAAM;;EAEzC+B,kBAAyBhC,gBAAgB4B,cAAO;EAChDK,SAAgBjC,gBAAgB4B,cAAO;AACzC,CAAA,CAAA;;;AD1CK,IAAMM,SAAN,cAA4BC,oBAAW,EAAW,GAAGC,KAAKC,EAAE,kBAAkB;EACnFC,OAAcC,eAAO;IACnBC,MAAaC,iBAAgBC,cAAM;IACnCC,SAAgBF,iBAAgBC,cAAM;EACxC,CAAA;EACAE,QAAeL,eAAO;IACpBM,QAAQC;EACV,CAAA;AACF,CAAA,EAAA;AAAI;AAEG,IAAMC,cAAN,cAAiCZ,oBAAW,EAAgB,GAAGC,KAAKC,EAAE,yBAAyB;EACpGC,OAAcC,eAAO;IACnBF,IAAWK;IACXM,UAAUC;EACZ,CAAA;EACAL,QAAeM;AACjB,CAAA,EAAA;AAAI;",
6
+ "names": ["Schema", "EditorViewMode", "Schema", "Obj", "Ref", "Type", "DescriptionAnnotation", "LabelAnnotation", "EditorInputMode", "EditorViewMode", "DataType", "ItemAnnotation", "Document", "Struct", "name", "optional", "String", "description", "fallbackName", "content", "Type", "Ref", "DataType", "Text", "pipe", "Obj", "typename", "version", "LabelAnnotation", "set", "DescriptionAnnotation", "ItemAnnotation", "makeDocument", "props", "make", "makeText", "Settings", "mutable", "defaultViewMode", "EditorViewMode", "editorInputMode", "EditorInputMode", "experimental", "Boolean", "debug", "toolbar", "typewriter", "numberedHeadings", "folding", "Create", "TaggedClass", "meta", "id", "input", "Struct", "name", "optional", "String", "content", "output", "object", "Document", "SetViewMode", "viewMode", "EditorViewMode", "Void"]
7
+ }
@@ -1,7 +1,7 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  Markdown_exports
4
- } from "./chunk-FXILAQ5F.mjs";
4
+ } from "./chunk-FWZKC6X5.mjs";
5
5
  import {
6
6
  meta
7
7
  } from "./chunk-VCG2U522.mjs";
@@ -51,4 +51,4 @@ var translations = [
51
51
  export {
52
52
  translations
53
53
  };
54
- //# sourceMappingURL=chunk-J7A6TUB2.mjs.map
54
+ //# sourceMappingURL=chunk-XO3IEQJE.mjs.map
@@ -1,7 +1,7 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  Markdown_exports
4
- } from "./chunk-FXILAQ5F.mjs";
4
+ } from "./chunk-FWZKC6X5.mjs";
5
5
 
6
6
  // src/util.tsx
7
7
  import { debounce } from "@dxos/async";
@@ -12,8 +12,9 @@ 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();
15
+ var getContentSnippet = (content) => {
16
+ const abstract = content.split("\n").filter((line) => !line.startsWith("#")).filter((line) => line.trim() !== "")[0].replaceAll(nonTitleChars, "").trim();
17
+ return abstract;
17
18
  };
18
19
  var setFallbackName = debounce((doc, content) => {
19
20
  const name = getFallbackName(content);
@@ -44,8 +45,8 @@ export {
44
45
  isEditorModel,
45
46
  isMarkdownProperties,
46
47
  getFallbackName,
47
- getAbstract,
48
+ getContentSnippet,
48
49
  setFallbackName,
49
50
  serializer
50
51
  };
51
- //# sourceMappingURL=chunk-O6EXWGGS.mjs.map
52
+ //# sourceMappingURL=chunk-ZBXV4ON7.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 getContentSnippet = (content: string) => {\n const abstract = content\n .split('\\n')\n .filter((line) => !line.startsWith('#'))\n .filter((line) => line.trim() !== '')[0]\n .replaceAll(nonTitleChars, '')\n .trim();\n return abstract;\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,oBAAoB,CAACL,YAAAA;AAChC,QAAMM,WAAWN,QACdE,MAAM,IAAA,EACNK,OAAO,CAACC,SAAS,CAACA,KAAKC,WAAW,GAAA,CAAA,EAClCF,OAAO,CAACC,SAASA,KAAKJ,KAAI,MAAO,EAAA,EAAI,CAAA,EACrCD,WAAWL,eAAe,EAAA,EAC1BM,KAAI;AACP,SAAOE;AACT;AAEO,IAAMI,kBAAkBC,SAAS,CAACC,KAAwBZ,YAAAA;AAC/D,QAAMa,OAAOd,gBAAgBC,OAAAA;AAC7B,MAAIY,IAAIE,iBAAiBD,MAAM;AAC7BD,QAAIE,eAAeD;EACrB;AACF,GAAG,GAAA;AAEI,IAAME,aAAuD;EAClEC,WAAW,OAAO,EAAEC,OAAM,MAAE;AAC1B,UAAM,EAAEjB,QAAO,IAAK,MAAMiB,OAAOjB,QAAQkB,KAAI;AAC7C,WAAOC,KAAKC,UAAU;MAAEP,MAAMI,OAAOJ;MAAMC,cAAcG,OAAOH;MAAcd;IAAQ,CAAA;EACxF;EAEAqB,aAAa,OAAO,EAAErB,SAASsB,WAAU,MAAE;AACzC,UAAM,EAAET,MAAMC,cAAcd,QAAO,IAAKmB,KAAKI,MAAMD,UAAAA;AACnD,WAAOE,iBAASC,aAAa;MAAEZ;MAAMC;MAAcd;IAAQ,CAAA;EAC7D;AACF;",
6
+ "names": ["debounce", "Obj", "isEditorModel", "data", "id", "text", "isMarkdownProperties", "Obj", "isObject", "title", "nonTitleChars", "getFallbackName", "content", "substring", "split", "replaceAll", "trim", "getContentSnippet", "abstract", "filter", "line", "startsWith", "setFallbackName", "debounce", "doc", "name", "fallbackName", "serializer", "serialize", "object", "load", "JSON", "stringify", "deserialize", "serialized", "parse", "Markdown", "makeDocument"]
7
+ }
@@ -1,7 +1,7 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  translations
4
- } from "./chunk-J7A6TUB2.mjs";
4
+ } from "./chunk-XO3IEQJE.mjs";
5
5
  import {
6
6
  AnchorSort,
7
7
  AppGraphSerializer,
@@ -11,25 +11,25 @@ import {
11
11
  MarkdownState,
12
12
  ReactSurface,
13
13
  Toolkit
14
- } from "./chunk-Q2BREK2M.mjs";
14
+ } from "./chunk-7RDNIMTF.mjs";
15
15
  import {
16
16
  BLUEPRINT_KEY
17
- } from "./chunk-DVK63TD3.mjs";
17
+ } from "./chunk-FVI7LPC3.mjs";
18
18
  import {
19
19
  MarkdownCapabilities
20
20
  } from "./chunk-CB2R4YIY.mjs";
21
21
  import {
22
- getAbstract,
22
+ getContentSnippet,
23
23
  getFallbackName,
24
24
  isEditorModel,
25
25
  isMarkdownProperties,
26
26
  serializer,
27
27
  setFallbackName
28
- } from "./chunk-O6EXWGGS.mjs";
28
+ } from "./chunk-ZBXV4ON7.mjs";
29
29
  import {
30
30
  MarkdownAction_exports,
31
31
  Markdown_exports
32
- } from "./chunk-FXILAQ5F.mjs";
32
+ } from "./chunk-FWZKC6X5.mjs";
33
33
  import {
34
34
  meta
35
35
  } from "./chunk-VCG2U522.mjs";
@@ -50,7 +50,7 @@ import { defineObjectForm } from "@dxos/plugin-space/types";
50
50
  import { createDocAccessor, getTextInRange } from "@dxos/react-client/echo";
51
51
  import { translations as editorTranslations } from "@dxos/react-ui-editor";
52
52
  import { DataType } from "@dxos/schema";
53
- var MarkdownPlugin = () => definePlugin(meta, [
53
+ var MarkdownPlugin = definePlugin(meta, () => [
54
54
  defineModule({
55
55
  id: `${meta.id}/module/translations`,
56
56
  activatesOn: Events2.SetupTranslations,
@@ -80,6 +80,7 @@ var MarkdownPlugin = () => definePlugin(meta, [
80
80
  metadata: {
81
81
  label: (object) => object.name || object.fallbackName,
82
82
  icon: "ph--text-aa--regular",
83
+ iconClassName: "text-indigoSurfaceText",
83
84
  blueprints: [
84
85
  BLUEPRINT_KEY
85
86
  ],
@@ -163,7 +164,7 @@ export {
163
164
  MarkdownCapabilities,
164
165
  MarkdownEvents,
165
166
  MarkdownPlugin,
166
- getAbstract,
167
+ getContentSnippet,
167
168
  getFallbackName,
168
169
  isEditorModel,
169
170
  isMarkdownProperties,
@@ -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 { 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, Events, contributes, createIntent, defineModule, definePlugin } 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 BLUEPRINT_KEY,\n BlueprintDefinition,\n IntentResolver,\n MarkdownSettings,\n MarkdownState,\n ReactSurface,\n Toolkit,\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 blueprints: [BLUEPRINT_KEY],\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: () => createIntent(MarkdownAction.Create, {}),\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/blueprint`,\n activatesOn: Events.SetupArtifactDefinition,\n activate: BlueprintDefinition,\n }),\n defineModule({\n id: `${meta.id}/module/toolkit`,\n // TODO(wittjosiah): Use a different event.\n activatesOn: Events.Startup,\n activate: Toolkit,\n }),\n ]);\n"],
5
- "mappings": "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",
6
- "names": ["Events", "MarkdownEvents", "SetupExtensions", "Events", "createStateEvent", "meta", "id", "Capabilities", "Events", "contributes", "createIntent", "defineModule", "definePlugin", "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", "blueprints", "BLUEPRINT_KEY", "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", "createIntent", "MarkdownAction", "Create", "ClientCapabilities", "Schema", "DataType", "Text", "SetupReactSurface", "activatesBefore", "MarkdownEvents", "SetupExtensions", "ReactSurface", "SetupIntentResolver", "IntentResolver", "AppGraphReady", "AppGraphSerializer", "AnchorSort", "SetupArtifactDefinition", "BlueprintDefinition", "Startup", "Toolkit"]
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, Events, contributes, createIntent, defineModule, definePlugin } 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 BLUEPRINT_KEY,\n BlueprintDefinition,\n IntentResolver,\n MarkdownSettings,\n MarkdownState,\n ReactSurface,\n Toolkit,\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 = 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 iconClassName: 'text-indigoSurfaceText',\n blueprints: [BLUEPRINT_KEY],\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: () => createIntent(MarkdownAction.Create, {}),\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/blueprint`,\n activatesOn: Events.SetupArtifactDefinition,\n activate: BlueprintDefinition,\n }),\n defineModule({\n id: `${meta.id}/module/toolkit`,\n // TODO(wittjosiah): Use a different event.\n activatesOn: Events.Startup,\n activate: Toolkit,\n }),\n]);\n"],
5
+ "mappings": "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",
6
+ "names": ["Events", "MarkdownEvents", "SetupExtensions", "Events", "createStateEvent", "meta", "id", "Capabilities", "Events", "contributes", "createIntent", "defineModule", "definePlugin", "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", "iconClassName", "blueprints", "BLUEPRINT_KEY", "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", "createIntent", "MarkdownAction", "Create", "ClientCapabilities", "Schema", "DataType", "Text", "SetupReactSurface", "activatesBefore", "MarkdownEvents", "SetupExtensions", "ReactSurface", "SetupIntentResolver", "IntentResolver", "AppGraphReady", "AppGraphSerializer", "AnchorSort", "SetupArtifactDefinition", "BlueprintDefinition", "Startup", "Toolkit"]
7
7
  }
@@ -5,16 +5,16 @@ import {
5
5
  import {
6
6
  MarkdownAction_exports,
7
7
  Markdown_exports
8
- } from "./chunk-FXILAQ5F.mjs";
8
+ } from "./chunk-FWZKC6X5.mjs";
9
9
  import "./chunk-VCG2U522.mjs";
10
10
 
11
11
  // src/capabilities/intent-resolver.ts
12
12
  import { next as A } from "@automerge/automerge";
13
- import { Option } from "effect";
13
+ import * as Option from "effect/Option";
14
14
  import { Capabilities, CollaborationActions, contributes, createResolver } from "@dxos/app-framework";
15
15
  import { Obj } from "@dxos/echo";
16
16
  import { createDocAccessor, getRangeFromCursor } from "@dxos/react-client/echo";
17
- var intent_resolver_default = (context) => contributes(Capabilities.IntentResolver, [
17
+ var intent_resolver_default = ((context) => contributes(Capabilities.IntentResolver, [
18
18
  createResolver({
19
19
  intent: MarkdownAction_exports.Create,
20
20
  resolve: ({ name, content }) => {
@@ -56,8 +56,8 @@ var intent_resolver_default = (context) => contributes(Capabilities.IntentResolv
56
56
  });
57
57
  }
58
58
  })
59
- ]);
59
+ ]));
60
60
  export {
61
61
  intent_resolver_default as default
62
62
  };
63
- //# sourceMappingURL=intent-resolver-2I5HKCUU.mjs.map
63
+ //# sourceMappingURL=intent-resolver-7A2EXGZQ.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 { next as A } from '@automerge/automerge';\nimport * as Option from 'effect/Option';\nimport type * as Schema from 'effect/Schema';\n\nimport {\n Capabilities,\n CollaborationActions,\n type PluginContext,\n contributes,\n createResolver,\n} from '@dxos/app-framework';\nimport { Obj } from '@dxos/echo';\nimport { createDocAccessor, getRangeFromCursor } from '@dxos/react-client/echo';\n\nimport { Markdown, MarkdownAction } from '../types';\n\nimport { MarkdownCapabilities } from './capabilities';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: MarkdownAction.Create,\n resolve: ({ name, content }) => {\n return { data: { object: Markdown.makeDocument({ name, content }) } };\n },\n }),\n createResolver({\n intent: MarkdownAction.SetViewMode,\n resolve: ({ id, viewMode }) => {\n const { state } = context.getCapability(MarkdownCapabilities.State);\n state.viewMode[id] = viewMode;\n },\n }),\n createResolver({\n intent: CollaborationActions.AcceptProposal,\n filter: (\n data,\n ): data is Omit<Schema.Schema.Type<typeof CollaborationActions.AcceptProposal.fields.input>, 'subject'> & {\n subject: Markdown.Document;\n } => Obj.instanceOf(Markdown.Document, data.subject),\n resolve: async ({ subject, anchor, proposal }) => {\n const text = await subject.content.load();\n const accessor = createDocAccessor(text, ['content']);\n const { start, end } = Option.fromNullable(anchor).pipe(\n Option.flatMap((at) => Option.fromNullable(getRangeFromCursor(accessor, at))),\n // Fallback to the end of the document.\n Option.getOrElse(() => ({ start: text.content.length - 1, end: text.content.length - 1 })),\n );\n accessor.handle.change((doc) => {\n A.splice(doc, accessor.path.slice(), start, end - start, proposal.text);\n });\n },\n }),\n ]);\n"],
5
+ "mappings": ";;;;;;;;;;;AAIA,SAASA,QAAQC,SAAS;AAC1B,YAAYC,YAAY;AAGxB,SACEC,cACAC,sBAEAC,aACAC,sBACK;AACP,SAASC,WAAW;AACpB,SAASC,mBAAmBC,0BAA0B;AAMtD,IAAA,2BAAe,CAACC,YACdC,YAAYC,aAAaC,gBAAgB;EACvCC,eAAe;IACbC,QAAQC,uBAAeC;IACvBC,SAAS,CAAC,EAAEC,MAAMC,QAAO,MAAE;AACzB,aAAO;QAAEC,MAAM;UAAEC,QAAQC,iBAASC,aAAa;YAAEL;YAAMC;UAAQ,CAAA;QAAG;MAAE;IACtE;EACF,CAAA;EACAN,eAAe;IACbC,QAAQC,uBAAeS;IACvBP,SAAS,CAAC,EAAEQ,IAAIC,SAAQ,MAAE;AACxB,YAAM,EAAEC,MAAK,IAAKlB,QAAQmB,cAAcC,qBAAqBC,KAAK;AAClEH,YAAMD,SAASD,EAAAA,IAAMC;IACvB;EACF,CAAA;EACAb,eAAe;IACbC,QAAQiB,qBAAqBC;IAC7BC,QAAQ,CACNb,SAGGc,IAAIC,WAAWb,iBAASc,UAAUhB,KAAKiB,OAAO;IACnDpB,SAAS,OAAO,EAAEoB,SAASC,QAAQC,SAAQ,MAAE;AAC3C,YAAMC,OAAO,MAAMH,QAAQlB,QAAQsB,KAAI;AACvC,YAAMC,WAAWC,kBAAkBH,MAAM;QAAC;OAAU;AACpD,YAAM,EAAEI,OAAOC,IAAG,IAAYC,oBAAaR,MAAAA,EAAQS;QAC1CC,eAAQ,CAACC,OAAcH,oBAAaI,mBAAmBR,UAAUO,EAAAA,CAAAA,CAAAA;;QAEjEE,iBAAU,OAAO;UAAEP,OAAOJ,KAAKrB,QAAQiC,SAAS;UAAGP,KAAKL,KAAKrB,QAAQiC,SAAS;QAAE,EAAA;MAAA;AAEzFV,eAASW,OAAOC,OAAO,CAACC,QAAAA;AACtBC,UAAEC,OAAOF,KAAKb,SAASgB,KAAKC,MAAK,GAAIf,OAAOC,MAAMD,OAAOL,SAASC,IAAI;MACxE,CAAA;IACF;EACF,CAAA;CACD;",
6
+ "names": ["next", "A", "Option", "Capabilities", "CollaborationActions", "contributes", "createResolver", "Obj", "createDocAccessor", "getRangeFromCursor", "context", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "MarkdownAction", "Create", "resolve", "name", "content", "data", "object", "Markdown", "makeDocument", "SetViewMode", "id", "viewMode", "state", "getCapability", "MarkdownCapabilities", "State", "CollaborationActions", "AcceptProposal", "filter", "Obj", "instanceOf", "Document", "subject", "anchor", "proposal", "text", "load", "accessor", "createDocAccessor", "start", "end", "fromNullable", "pipe", "flatMap", "at", "getRangeFromCursor", "getOrElse", "length", "handle", "change", "doc", "A", "splice", "path", "slice"]
7
+ }