@dxos/plugin-markdown 0.8.4-main.7ace549 → 0.8.4-main.9735255
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/browser/MarkdownCard-WHK3ORP7.mjs +12 -0
- package/dist/lib/browser/MarkdownContainer-V7EAADMF.mjs +12 -0
- package/dist/lib/browser/{anchor-sort-3MYLO74J.mjs → anchor-sort-WQ3TL7ZI.mjs} +7 -7
- package/dist/lib/browser/anchor-sort-WQ3TL7ZI.mjs.map +7 -0
- package/dist/lib/browser/app-graph-serializer-ULZUJKOD.mjs +58 -0
- package/dist/lib/browser/app-graph-serializer-ULZUJKOD.mjs.map +7 -0
- package/dist/lib/browser/blueprint-definition-TLV4PNZW.mjs +19 -0
- package/dist/lib/browser/blueprint-definition-TLV4PNZW.mjs.map +7 -0
- package/dist/lib/browser/blueprints/index.mjs +8 -0
- package/dist/lib/browser/chunk-BX73DASG.mjs +702 -0
- package/dist/lib/browser/chunk-BX73DASG.mjs.map +7 -0
- package/dist/lib/browser/chunk-CUGDX7KA.mjs +8 -0
- package/dist/lib/browser/chunk-CUGDX7KA.mjs.map +7 -0
- package/dist/lib/browser/{chunk-BE3IO2CM.mjs → chunk-FWQQW6KU.mjs} +41 -47
- package/dist/lib/browser/chunk-FWQQW6KU.mjs.map +7 -0
- package/dist/lib/browser/{chunk-NXT2E2BG.mjs → chunk-JOXYQLKH.mjs} +3 -5
- package/dist/lib/browser/{chunk-NXT2E2BG.mjs.map → chunk-JOXYQLKH.mjs.map} +1 -1
- package/dist/lib/browser/chunk-KDKXFKDN.mjs +104 -0
- package/dist/lib/browser/chunk-KDKXFKDN.mjs.map +7 -0
- package/dist/lib/browser/chunk-LMO5UVKL.mjs +167 -0
- package/dist/lib/browser/chunk-LMO5UVKL.mjs.map +7 -0
- package/dist/lib/browser/chunk-S45ULIOG.mjs +101 -0
- package/dist/lib/browser/chunk-S45ULIOG.mjs.map +7 -0
- package/dist/lib/browser/chunk-WIPSLZ6L.mjs +60 -0
- package/dist/lib/browser/chunk-WIPSLZ6L.mjs.map +7 -0
- package/dist/lib/browser/cli/index.mjs +32 -0
- package/dist/lib/browser/cli/index.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +121 -129
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/operation-resolver-EGCWOQKJ.mjs +53 -0
- package/dist/lib/browser/operation-resolver-EGCWOQKJ.mjs.map +7 -0
- package/dist/lib/browser/react-surface-SRPLD3ED.mjs +213 -0
- package/dist/lib/browser/react-surface-SRPLD3ED.mjs.map +7 -0
- package/dist/lib/browser/settings-JY5JE7MI.mjs +35 -0
- package/dist/lib/browser/settings-JY5JE7MI.mjs.map +7 -0
- package/dist/lib/browser/state-QE7VSJWJ.mjs +29 -0
- package/dist/lib/browser/state-QE7VSJWJ.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +10 -3
- package/dist/lib/node-esm/{MarkdownCard-FTEHVH7P.mjs → MarkdownCard-WJPLQTFS.mjs} +5 -5
- package/dist/lib/node-esm/MarkdownContainer-LUSMORP2.mjs +13 -0
- package/dist/lib/node-esm/{anchor-sort-W4HCTYUQ.mjs → anchor-sort-G7D5TAI6.mjs} +7 -7
- package/dist/lib/node-esm/anchor-sort-G7D5TAI6.mjs.map +7 -0
- package/dist/lib/node-esm/app-graph-serializer-W5YMQP7P.mjs +59 -0
- package/dist/lib/node-esm/app-graph-serializer-W5YMQP7P.mjs.map +7 -0
- package/dist/lib/node-esm/blueprint-definition-HYFA7BKQ.mjs +20 -0
- package/dist/lib/node-esm/blueprint-definition-HYFA7BKQ.mjs.map +7 -0
- package/dist/lib/node-esm/blueprints/index.mjs +9 -0
- package/dist/lib/node-esm/chunk-3JYPCC7M.mjs +105 -0
- package/dist/lib/node-esm/chunk-3JYPCC7M.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-I5JSQBPI.mjs → chunk-44VJC3QF.mjs} +3 -5
- package/dist/lib/node-esm/{chunk-I5JSQBPI.mjs.map → chunk-44VJC3QF.mjs.map} +1 -1
- package/dist/lib/node-esm/chunk-D4BCFPKK.mjs +703 -0
- package/dist/lib/node-esm/chunk-D4BCFPKK.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-3DN4DPVA.mjs → chunk-EYAFC4N7.mjs} +41 -47
- package/dist/lib/node-esm/chunk-EYAFC4N7.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-PRV35A7Z.mjs +168 -0
- package/dist/lib/node-esm/chunk-PRV35A7Z.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-RQP7G7XW.mjs +61 -0
- package/dist/lib/node-esm/chunk-RQP7G7XW.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-7GN66TDQ.mjs → chunk-SDTYEGGL.mjs} +56 -6
- package/dist/lib/node-esm/chunk-SDTYEGGL.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-W3IIKDV5.mjs +10 -0
- package/dist/lib/node-esm/chunk-W3IIKDV5.mjs.map +7 -0
- package/dist/lib/node-esm/cli/index.mjs +33 -0
- package/dist/lib/node-esm/cli/index.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +121 -129
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/operation-resolver-2HIS2AQZ.mjs +54 -0
- package/dist/lib/node-esm/operation-resolver-2HIS2AQZ.mjs.map +7 -0
- package/dist/lib/node-esm/react-surface-RONSOJIQ.mjs +214 -0
- package/dist/lib/node-esm/react-surface-RONSOJIQ.mjs.map +7 -0
- package/dist/lib/node-esm/settings-4UGMPIRY.mjs +36 -0
- package/dist/lib/node-esm/settings-4UGMPIRY.mjs.map +7 -0
- package/dist/lib/node-esm/state-LXE5XIN4.mjs +30 -0
- package/dist/lib/node-esm/state-LXE5XIN4.mjs.map +7 -0
- package/dist/lib/node-esm/types/index.mjs +10 -3
- package/dist/types/src/MarkdownPlugin.d.ts +2 -1
- package/dist/types/src/MarkdownPlugin.d.ts.map +1 -1
- package/dist/types/src/blueprints/functions/create.d.ts.map +1 -0
- package/dist/types/src/blueprints/functions/create.test.d.ts.map +1 -0
- package/dist/types/src/blueprints/functions/index.d.ts +4 -0
- package/dist/types/src/blueprints/functions/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/functions/open.d.ts.map +1 -0
- package/dist/types/src/blueprints/functions/update.d.ts.map +1 -0
- package/dist/types/src/blueprints/functions/update.test.d.ts.map +1 -0
- package/dist/types/src/blueprints/index.d.ts +2 -0
- package/dist/types/src/blueprints/index.d.ts.map +1 -0
- package/dist/types/src/blueprints/markdown-blueprint.d.ts +21 -0
- package/dist/types/src/blueprints/markdown-blueprint.d.ts.map +1 -0
- package/dist/types/src/capabilities/anchor-sort/anchor-sort.d.ts +5 -0
- package/dist/types/src/capabilities/anchor-sort/anchor-sort.d.ts.map +1 -0
- package/dist/types/src/capabilities/anchor-sort/index.d.ts +3 -0
- package/dist/types/src/capabilities/anchor-sort/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts +5 -0
- package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-serializer/index.d.ts +3 -0
- package/dist/types/src/capabilities/app-graph-serializer/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts +5 -0
- package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts.map +1 -0
- package/dist/types/src/capabilities/artifact-definition/index.d.ts +3 -0
- package/dist/types/src/capabilities/artifact-definition/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +10 -0
- package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +1 -0
- package/dist/types/src/capabilities/blueprint-definition/index.d.ts +3 -0
- package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +6 -13
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/operation-resolver/index.d.ts +3 -0
- package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +5 -0
- package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface/index.d.ts +3 -0
- package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts +5 -0
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -0
- package/dist/types/src/capabilities/settings/index.d.ts +3 -0
- package/dist/types/src/capabilities/settings/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/settings/settings.d.ts +6 -0
- package/dist/types/src/capabilities/settings/settings.d.ts.map +1 -0
- package/dist/types/src/capabilities/state/index.d.ts +3 -0
- package/dist/types/src/capabilities/state/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/state/state.d.ts +5 -0
- package/dist/types/src/capabilities/state/state.d.ts.map +1 -0
- package/dist/types/src/cli/index.d.ts +2 -0
- package/dist/types/src/cli/index.d.ts.map +1 -0
- package/dist/types/src/cli/plugin.d.ts +3 -0
- package/dist/types/src/cli/plugin.d.ts.map +1 -0
- package/dist/types/src/components/MarkdownCard/MarkdownCard.d.ts +4 -3
- package/dist/types/src/components/MarkdownCard/MarkdownCard.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownCard/MarkdownCard.stories.d.ts +5 -5
- package/dist/types/src/components/MarkdownCard/MarkdownCard.stories.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownContainer.d.ts +19 -5
- package/dist/types/src/components/MarkdownContainer.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownContainer.stories.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownEditor/FileUpload.d.ts +2 -2
- package/dist/types/src/components/MarkdownEditor/FileUpload.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts +8 -7
- package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts +12 -8
- package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts +4 -4
- package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts +4 -2
- package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts.map +1 -1
- package/dist/types/src/components/Suggestions.stories.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +5 -2
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/hooks/useEditorMenuOptions.d.ts.map +1 -1
- package/dist/types/src/hooks/useExtensions.d.ts +3 -3
- package/dist/types/src/hooks/useExtensions.d.ts.map +1 -1
- package/dist/types/src/hooks/useLinkQuery.d.ts +2 -2
- package/dist/types/src/hooks/useLinkQuery.d.ts.map +1 -1
- package/dist/types/src/hooks/useSelectCurrentThread.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +1 -2
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts +2 -2
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/testing.d.ts +2 -2
- package/dist/types/src/testing.d.ts.map +1 -1
- package/dist/types/src/types/Markdown.d.ts +12 -12
- package/dist/types/src/types/Markdown.d.ts.map +1 -1
- package/dist/types/src/types/MarkdownAction.d.ts +62 -30
- package/dist/types/src/types/MarkdownAction.d.ts.map +1 -1
- package/dist/types/src/types/capabilities.d.ts +22 -0
- package/dist/types/src/types/capabilities.d.ts.map +1 -0
- package/dist/types/src/types/events.d.ts +5 -0
- package/dist/types/src/types/events.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +3 -0
- package/dist/types/src/types/index.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +2 -2
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/src/util.d.ts +3 -0
- package/dist/types/src/util.d.ts.map +1 -1
- package/dist/types/src/util.test.d.ts +2 -0
- package/dist/types/src/util.test.d.ts.map +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +81 -66
- package/src/MarkdownPlugin.tsx +61 -74
- package/src/blueprints/functions/create.conversations.json +1 -0
- package/src/{functions → blueprints/functions}/create.test.ts +20 -23
- package/src/{functions → blueprints/functions}/create.ts +1 -1
- package/src/blueprints/functions/index.ts +7 -0
- package/src/{functions → blueprints/functions}/open.ts +4 -3
- package/src/blueprints/functions/update.conversations.json +1 -0
- package/src/{functions → blueprints/functions}/update.test.ts +23 -25
- package/src/{functions → blueprints/functions}/update.ts +4 -3
- package/src/blueprints/index.ts +5 -0
- package/src/blueprints/markdown-blueprint.ts +38 -0
- package/src/capabilities/anchor-sort/anchor-sort.ts +36 -0
- package/src/capabilities/anchor-sort/index.ts +7 -0
- package/src/capabilities/app-graph-serializer/app-graph-serializer.ts +59 -0
- package/src/capabilities/app-graph-serializer/index.ts +7 -0
- package/src/capabilities/artifact-definition/artifact-definition.ts +110 -0
- package/src/capabilities/artifact-definition/index.ts +7 -0
- package/src/capabilities/blueprint-definition/blueprint-definition.ts +25 -0
- package/src/capabilities/blueprint-definition/index.ts +7 -0
- package/src/capabilities/index.ts +6 -11
- package/src/capabilities/operation-resolver/index.ts +7 -0
- package/src/capabilities/operation-resolver/operation-resolver.ts +45 -0
- package/src/capabilities/react-surface/index.ts +7 -0
- package/src/capabilities/react-surface/react-surface.tsx +100 -0
- package/src/capabilities/settings/index.ts +7 -0
- package/src/capabilities/settings/settings.ts +36 -0
- package/src/capabilities/state/index.ts +7 -0
- package/src/capabilities/state/state.ts +31 -0
- package/src/cli/index.ts +5 -0
- package/src/cli/plugin.ts +29 -0
- package/src/components/MarkdownCard/MarkdownCard.stories.tsx +25 -43
- package/src/components/MarkdownCard/MarkdownCard.tsx +22 -47
- package/src/components/MarkdownContainer.stories.tsx +47 -60
- package/src/components/MarkdownContainer.tsx +86 -88
- package/src/components/MarkdownEditor/FileUpload.tsx +3 -3
- package/src/components/MarkdownEditor/MarkdownEditor.stories.tsx +16 -17
- package/src/components/MarkdownEditor/MarkdownEditor.tsx +14 -15
- package/src/components/MarkdownEditor/MarkdownEditorContent.tsx +44 -18
- package/src/components/MarkdownEditor/MarkdownEditorToolbar.tsx +7 -4
- package/src/components/MarkdownSettings/MarkdownSettings.tsx +24 -10
- package/src/components/Suggestions.stories.tsx +21 -32
- package/src/components/index.ts +8 -3
- package/src/hooks/useEditorMenuOptions.ts +10 -13
- package/src/hooks/useExtensions.tsx +23 -28
- package/src/hooks/useLinkQuery.ts +13 -13
- package/src/hooks/useSelectCurrentThread.tsx +37 -42
- package/src/index.ts +1 -2
- package/src/meta.ts +2 -2
- package/src/testing.ts +3 -3
- package/src/types/Markdown.ts +2 -2
- package/src/types/MarkdownAction.ts +48 -18
- package/src/types/capabilities.ts +38 -0
- package/src/types/events.ts +13 -0
- package/src/types/index.ts +3 -0
- package/src/types/types.ts +3 -2
- package/src/util.test.ts +44 -0
- package/src/util.tsx +75 -5
- package/dist/lib/browser/MarkdownCard-TC3GGUSX.mjs +0 -12
- package/dist/lib/browser/MarkdownContainer-YF22DV4M.mjs +0 -15
- package/dist/lib/browser/anchor-sort-3MYLO74J.mjs.map +0 -7
- package/dist/lib/browser/app-graph-serializer-BZJ4TQOE.mjs +0 -51
- package/dist/lib/browser/app-graph-serializer-BZJ4TQOE.mjs.map +0 -7
- package/dist/lib/browser/blueprint-definition-HED54GGW.mjs +0 -13
- package/dist/lib/browser/chunk-3IPVL3E4.mjs +0 -20
- package/dist/lib/browser/chunk-3IPVL3E4.mjs.map +0 -7
- package/dist/lib/browser/chunk-BE3IO2CM.mjs.map +0 -7
- package/dist/lib/browser/chunk-BQTYJOFB.mjs +0 -28
- package/dist/lib/browser/chunk-BQTYJOFB.mjs.map +0 -7
- package/dist/lib/browser/chunk-CN35HEBX.mjs +0 -79
- package/dist/lib/browser/chunk-CN35HEBX.mjs.map +0 -7
- package/dist/lib/browser/chunk-DLZ5RR3P.mjs +0 -96
- package/dist/lib/browser/chunk-DLZ5RR3P.mjs.map +0 -7
- package/dist/lib/browser/chunk-IBCHVMZW.mjs +0 -16
- package/dist/lib/browser/chunk-IBCHVMZW.mjs.map +0 -7
- package/dist/lib/browser/chunk-OKNQ57GF.mjs +0 -51
- package/dist/lib/browser/chunk-OKNQ57GF.mjs.map +0 -7
- package/dist/lib/browser/chunk-V7P7EIWG.mjs +0 -829
- package/dist/lib/browser/chunk-V7P7EIWG.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-55ASQRIW.mjs +0 -62
- package/dist/lib/browser/intent-resolver-55ASQRIW.mjs.map +0 -7
- package/dist/lib/browser/react-surface-GPD6T435.mjs +0 -211
- package/dist/lib/browser/react-surface-GPD6T435.mjs.map +0 -7
- package/dist/lib/browser/settings-G3ZOXJQY.mjs +0 -28
- package/dist/lib/browser/settings-G3ZOXJQY.mjs.map +0 -7
- package/dist/lib/browser/state-BTUKVZHY.mjs +0 -37
- package/dist/lib/browser/state-BTUKVZHY.mjs.map +0 -7
- package/dist/lib/browser/toolkit.mjs +0 -13
- package/dist/lib/node-esm/MarkdownContainer-L75AIJFM.mjs +0 -16
- package/dist/lib/node-esm/anchor-sort-W4HCTYUQ.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-serializer-OCTHXWLF.mjs +0 -52
- package/dist/lib/node-esm/app-graph-serializer-OCTHXWLF.mjs.map +0 -7
- package/dist/lib/node-esm/blueprint-definition-HAQGJOMQ.mjs +0 -14
- package/dist/lib/node-esm/blueprint-definition-HAQGJOMQ.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-3DN4DPVA.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-7GN66TDQ.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-GMMVSXQ6.mjs +0 -17
- package/dist/lib/node-esm/chunk-GMMVSXQ6.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-SHAMSMKQ.mjs +0 -29
- package/dist/lib/node-esm/chunk-SHAMSMKQ.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-TYUGABTD.mjs +0 -22
- package/dist/lib/node-esm/chunk-TYUGABTD.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-UVLACSAE.mjs +0 -830
- package/dist/lib/node-esm/chunk-UVLACSAE.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-YFRTKXTB.mjs +0 -80
- package/dist/lib/node-esm/chunk-YFRTKXTB.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-ZNS55FS3.mjs +0 -97
- package/dist/lib/node-esm/chunk-ZNS55FS3.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-DTBVWCNO.mjs +0 -63
- package/dist/lib/node-esm/intent-resolver-DTBVWCNO.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-QWG7CJ5U.mjs +0 -212
- package/dist/lib/node-esm/react-surface-QWG7CJ5U.mjs.map +0 -7
- package/dist/lib/node-esm/settings-IBFFCGNL.mjs +0 -29
- package/dist/lib/node-esm/settings-IBFFCGNL.mjs.map +0 -7
- package/dist/lib/node-esm/state-K6EH7SRZ.mjs +0 -38
- package/dist/lib/node-esm/state-K6EH7SRZ.mjs.map +0 -7
- package/dist/lib/node-esm/toolkit.mjs +0 -14
- package/dist/lib/node-esm/toolkit.mjs.map +0 -7
- package/dist/types/src/capabilities/anchor-sort.d.ts +0 -4
- package/dist/types/src/capabilities/anchor-sort.d.ts.map +0 -1
- package/dist/types/src/capabilities/app-graph-serializer.d.ts +0 -4
- package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +0 -1
- package/dist/types/src/capabilities/artifact-definition.d.ts +0 -3
- package/dist/types/src/capabilities/artifact-definition.d.ts.map +0 -1
- package/dist/types/src/capabilities/blueprint-definition.d.ts +0 -7
- package/dist/types/src/capabilities/blueprint-definition.d.ts.map +0 -1
- package/dist/types/src/capabilities/capabilities.d.ts +0 -12
- package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface.d.ts +0 -4
- package/dist/types/src/capabilities/react-surface.d.ts.map +0 -1
- package/dist/types/src/capabilities/settings.d.ts +0 -4
- package/dist/types/src/capabilities/settings.d.ts.map +0 -1
- package/dist/types/src/capabilities/state.d.ts +0 -11
- package/dist/types/src/capabilities/state.d.ts.map +0 -1
- package/dist/types/src/events.d.ts +0 -4
- package/dist/types/src/events.d.ts.map +0 -1
- package/dist/types/src/functions/create.d.ts.map +0 -1
- package/dist/types/src/functions/create.test.d.ts.map +0 -1
- package/dist/types/src/functions/index.d.ts +0 -18
- package/dist/types/src/functions/index.d.ts.map +0 -1
- package/dist/types/src/functions/open.d.ts.map +0 -1
- package/dist/types/src/functions/update.d.ts.map +0 -1
- package/dist/types/src/functions/update.test.d.ts.map +0 -1
- package/dist/types/src/toolkit.d.ts +0 -3
- package/dist/types/src/toolkit.d.ts.map +0 -1
- package/src/capabilities/anchor-sort.ts +0 -31
- package/src/capabilities/app-graph-serializer.ts +0 -54
- package/src/capabilities/artifact-definition.ts +0 -112
- package/src/capabilities/blueprint-definition.ts +0 -43
- package/src/capabilities/capabilities.ts +0 -22
- package/src/capabilities/intent-resolver.ts +0 -58
- package/src/capabilities/react-surface.tsx +0 -93
- package/src/capabilities/settings.ts +0 -25
- package/src/capabilities/state.ts +0 -31
- package/src/events.ts +0 -11
- package/src/functions/create.conversations.json +0 -1
- package/src/functions/index.ts +0 -13
- package/src/functions/update.conversations.json +0 -1
- package/src/toolkit.ts +0 -6
- /package/dist/lib/browser/{MarkdownCard-TC3GGUSX.mjs.map → MarkdownCard-WHK3ORP7.mjs.map} +0 -0
- /package/dist/lib/browser/{MarkdownContainer-YF22DV4M.mjs.map → MarkdownContainer-V7EAADMF.mjs.map} +0 -0
- /package/dist/lib/browser/{blueprint-definition-HED54GGW.mjs.map → blueprints/index.mjs.map} +0 -0
- /package/dist/lib/{browser/toolkit.mjs.map → node-esm/MarkdownCard-WJPLQTFS.mjs.map} +0 -0
- /package/dist/lib/node-esm/{MarkdownCard-FTEHVH7P.mjs.map → MarkdownContainer-LUSMORP2.mjs.map} +0 -0
- /package/dist/lib/node-esm/{MarkdownContainer-L75AIJFM.mjs.map → blueprints/index.mjs.map} +0 -0
- /package/dist/types/src/{functions → blueprints/functions}/create.d.ts +0 -0
- /package/dist/types/src/{functions → blueprints/functions}/create.test.d.ts +0 -0
- /package/dist/types/src/{functions → blueprints/functions}/open.d.ts +0 -0
- /package/dist/types/src/{functions → blueprints/functions}/update.d.ts +0 -0
- /package/dist/types/src/{functions → blueprints/functions}/update.test.d.ts +0 -0
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { type Atom } from '@effect-atom/atom-react';
|
|
6
|
+
import * as Schema from 'effect/Schema';
|
|
7
|
+
|
|
8
|
+
import { Capability } from '@dxos/app-framework';
|
|
9
|
+
import { type EditorStateStore, type EditorViewMode } from '@dxos/ui-editor';
|
|
10
|
+
|
|
11
|
+
import { meta } from '../meta';
|
|
12
|
+
|
|
13
|
+
import type * as Markdown from './Markdown';
|
|
14
|
+
import { type MarkdownExtensionProvider } from './types';
|
|
15
|
+
|
|
16
|
+
/** Schema for persisted markdown state. */
|
|
17
|
+
export const MarkdownStateSchema = Schema.mutable(
|
|
18
|
+
Schema.Struct({
|
|
19
|
+
viewMode: Schema.Record({ key: Schema.String, value: Schema.String }),
|
|
20
|
+
}),
|
|
21
|
+
);
|
|
22
|
+
|
|
23
|
+
export type MarkdownState = {
|
|
24
|
+
viewMode: Record<string, EditorViewMode>;
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export namespace MarkdownCapabilities {
|
|
28
|
+
export const Settings = Capability.make<Atom.Writable<Markdown.Settings>>(`${meta.id}/capability/settings`);
|
|
29
|
+
|
|
30
|
+
/** Persisted state atom for view mode per document. */
|
|
31
|
+
export const State = Capability.make<Atom.Writable<MarkdownState>>(`${meta.id}/capability/state`);
|
|
32
|
+
|
|
33
|
+
/** Editor state store for cursor positions, scroll state, etc. */
|
|
34
|
+
export const EditorState = Capability.make<EditorStateStore>(`${meta.id}/capability/editor-state`);
|
|
35
|
+
|
|
36
|
+
// TODO(burdon): Move to ./types (external API)?
|
|
37
|
+
export const Extensions = Capability.make<MarkdownExtensionProvider[]>(`${meta.id}/capability/extensions`);
|
|
38
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { type ActivationEvent, Common } from '@dxos/app-framework';
|
|
6
|
+
|
|
7
|
+
import { meta } from '../meta';
|
|
8
|
+
|
|
9
|
+
export namespace MarkdownEvents {
|
|
10
|
+
export const SetupExtensions: ActivationEvent.ActivationEvent = Common.ActivationEvent.createStateEvent(
|
|
11
|
+
`${meta.id}/event/setup-extensions`,
|
|
12
|
+
);
|
|
13
|
+
}
|
package/src/types/index.ts
CHANGED
package/src/types/types.ts
CHANGED
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
// Copyright 2023 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import { type Extension } from '@
|
|
6
|
-
|
|
5
|
+
import { type Extension } from '@codemirror/state';
|
|
6
|
+
|
|
7
|
+
import { type EditorViewMode } from '@dxos/ui-editor/types';
|
|
7
8
|
|
|
8
9
|
import { type Document } from './Markdown';
|
|
9
10
|
|
package/src/util.test.ts
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { describe, expect, it } from 'vitest';
|
|
6
|
+
|
|
7
|
+
import { trim } from '@dxos/util';
|
|
8
|
+
|
|
9
|
+
import { getFallbackName } from './util';
|
|
10
|
+
|
|
11
|
+
describe('markdown utils', () => {
|
|
12
|
+
it('getFallbackName', () => {
|
|
13
|
+
const tests = [
|
|
14
|
+
{
|
|
15
|
+
content: '',
|
|
16
|
+
expected: '',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
content: trim`
|
|
20
|
+

|
|
21
|
+
|
|
22
|
+
# Welcome to Composer by DXOS
|
|
23
|
+
|
|
24
|
+
## What is Composer?
|
|
25
|
+
`,
|
|
26
|
+
expected: 'Welcome to Composer by DXOS',
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
content: trim`
|
|
30
|
+

|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
This document is about the decetralized platform DXOS.
|
|
35
|
+
`,
|
|
36
|
+
expected: 'This document is about the…',
|
|
37
|
+
},
|
|
38
|
+
];
|
|
39
|
+
|
|
40
|
+
tests.forEach(({ content, expected }) => {
|
|
41
|
+
expect(getFallbackName(content)).toBe(expected);
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
});
|
package/src/util.tsx
CHANGED
|
@@ -32,23 +32,93 @@ export const isMarkdownProperties = (data: unknown): data is MarkdownProperties
|
|
|
32
32
|
|
|
33
33
|
const nonTitleChars = /[^\w ]/g;
|
|
34
34
|
|
|
35
|
-
|
|
36
|
-
|
|
35
|
+
// Lines matching these patterns are skipped.
|
|
36
|
+
const skipPatterns = [
|
|
37
|
+
/^!\[/, // Image.
|
|
38
|
+
/^---\s*$/, // Horizontal rule.
|
|
39
|
+
/^```/, // Code block fence.
|
|
40
|
+
/^\s*$/, // Empty or whitespace-only.
|
|
41
|
+
];
|
|
42
|
+
|
|
43
|
+
// Patterns to extract title text (first capture group is used).
|
|
44
|
+
const titlePatterns = [
|
|
45
|
+
/^#{1,6}\s+(.+)/, // Heading.
|
|
46
|
+
];
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Extracts a fallback name by scanning lines for the first heading or text fragment.
|
|
50
|
+
*/
|
|
51
|
+
export const getFallbackName = (content = ''): string => {
|
|
52
|
+
const len = content.length;
|
|
53
|
+
|
|
54
|
+
let i = 0;
|
|
55
|
+
while (i < len) {
|
|
56
|
+
// Find end of line.
|
|
57
|
+
let lineEnd = i;
|
|
58
|
+
while (lineEnd < len && content[lineEnd] !== '\n') {
|
|
59
|
+
lineEnd++;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
const line = content.slice(i, lineEnd).trim();
|
|
63
|
+
i = lineEnd + 1;
|
|
64
|
+
|
|
65
|
+
// Skip lines matching skip patterns.
|
|
66
|
+
if (skipPatterns.some((pattern) => pattern.test(line))) {
|
|
67
|
+
continue;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
// Check for title patterns.
|
|
71
|
+
for (const pattern of titlePatterns) {
|
|
72
|
+
const match = pattern.exec(line);
|
|
73
|
+
if (match) {
|
|
74
|
+
const text = match[1].replaceAll(nonTitleChars, '').trim();
|
|
75
|
+
if (text.length > 0) {
|
|
76
|
+
return text;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
// Use line as plain text fallback.
|
|
82
|
+
const maxLen = 32;
|
|
83
|
+
const text = line.replaceAll(nonTitleChars, '').trim();
|
|
84
|
+
if (text.length > 0) {
|
|
85
|
+
if (text.length > maxLen) {
|
|
86
|
+
const words = text.split(/\s+/);
|
|
87
|
+
let result = '';
|
|
88
|
+
for (const word of words) {
|
|
89
|
+
const next = result.length === 0 ? word : result + ' ' + word;
|
|
90
|
+
if (next.length > maxLen) {
|
|
91
|
+
break;
|
|
92
|
+
}
|
|
93
|
+
result = next;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
return result + '…';
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
return text;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
return '';
|
|
37
104
|
};
|
|
38
105
|
|
|
106
|
+
// TODO(burdon): Option to strip Markdown.
|
|
39
107
|
export const getContentSnippet = (content = '') => {
|
|
40
108
|
const abstract = content
|
|
41
109
|
.split('\n')
|
|
42
|
-
.filter((line) => !line.startsWith('
|
|
110
|
+
.filter((line) => !line.startsWith('!'))
|
|
43
111
|
.filter((line) => line.trim() !== '');
|
|
44
112
|
|
|
45
|
-
return abstract.
|
|
113
|
+
return abstract.slice(0, 3).join('\n') ?? '';
|
|
46
114
|
};
|
|
47
115
|
|
|
48
116
|
export const setFallbackName = debounce((doc: Markdown.Document, content = '') => {
|
|
49
117
|
const name = getFallbackName(content);
|
|
50
118
|
if (doc.fallbackName !== name) {
|
|
51
|
-
doc
|
|
119
|
+
Obj.change(doc, (d) => {
|
|
120
|
+
d.fallbackName = name;
|
|
121
|
+
});
|
|
52
122
|
}
|
|
53
123
|
}, 200);
|
|
54
124
|
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
MarkdownCard,
|
|
3
|
-
MarkdownCard_default
|
|
4
|
-
} from "./chunk-DLZ5RR3P.mjs";
|
|
5
|
-
import "./chunk-OKNQ57GF.mjs";
|
|
6
|
-
import "./chunk-CN35HEBX.mjs";
|
|
7
|
-
import "./chunk-BQTYJOFB.mjs";
|
|
8
|
-
export {
|
|
9
|
-
MarkdownCard,
|
|
10
|
-
MarkdownCard_default as default
|
|
11
|
-
};
|
|
12
|
-
//# sourceMappingURL=MarkdownCard-TC3GGUSX.mjs.map
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
MarkdownContainer,
|
|
3
|
-
MarkdownContainer_default
|
|
4
|
-
} from "./chunk-V7P7EIWG.mjs";
|
|
5
|
-
import "./chunk-3IPVL3E4.mjs";
|
|
6
|
-
import "./chunk-BE3IO2CM.mjs";
|
|
7
|
-
import "./chunk-IBCHVMZW.mjs";
|
|
8
|
-
import "./chunk-OKNQ57GF.mjs";
|
|
9
|
-
import "./chunk-CN35HEBX.mjs";
|
|
10
|
-
import "./chunk-BQTYJOFB.mjs";
|
|
11
|
-
export {
|
|
12
|
-
MarkdownContainer,
|
|
13
|
-
MarkdownContainer_default as default
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=MarkdownContainer-YF22DV4M.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/capabilities/anchor-sort.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes } from '@dxos/app-framework';\nimport { Relation } from '@dxos/echo';\nimport { createDocAccessor, getRangeFromCursor } from '@dxos/echo-db';\nimport { type AnchoredTo } from '@dxos/types';\n\nimport { Markdown } from '../types';\n\nexport default () =>\n contributes(Capabilities.AnchorSort, {\n key: Markdown.Document.typename,\n sort: (anchorA: AnchoredTo.AnchoredTo, anchorB: AnchoredTo.AnchoredTo) => {\n const doc = Relation.getTarget(anchorA) as Markdown.Document;\n const accessor = doc.content.target ? createDocAccessor(doc.content.target, ['content']) : undefined;\n if (doc !== Relation.getTarget(anchorB) || !accessor) {\n return 0;\n }\n\n const getStartPosition = (cursor: string | undefined) => {\n const range = cursor ? getRangeFromCursor(accessor, cursor) : undefined;\n return range?.start ?? Number.MAX_SAFE_INTEGER;\n };\n\n const posA = getStartPosition(anchorA.anchor);\n const posB = getStartPosition(anchorB.anchor);\n return posA - posB;\n },\n });\n"],
|
|
5
|
-
"mappings": ";;;;;;AAIA,SAASA,cAAcC,mBAAmB;AAC1C,SAASC,gBAAgB;AACzB,SAASC,mBAAmBC,0BAA0B;AAKtD,IAAA,uBAAe,MACbC,YAAYC,aAAaC,YAAY;EACnCC,KAAKC,iBAASC,SAASC;EACvBC,MAAM,CAACC,SAAgCC,YAAAA;AACrC,UAAMC,MAAMC,SAASC,UAAUJ,OAAAA;AAC/B,UAAMK,WAAWH,IAAII,QAAQC,SAASC,kBAAkBN,IAAII,QAAQC,QAAQ;MAAC;KAAU,IAAIE;AAC3F,QAAIP,QAAQC,SAASC,UAAUH,OAAAA,KAAY,CAACI,UAAU;AACpD,aAAO;IACT;AAEA,UAAMK,mBAAmB,CAACC,WAAAA;AACxB,YAAMC,QAAQD,SAASE,mBAAmBR,UAAUM,MAAAA,IAAUF;AAC9D,aAAOG,OAAOE,SAASC,OAAOC;IAChC;AAEA,UAAMC,OAAOP,iBAAiBV,QAAQkB,MAAM;AAC5C,UAAMC,OAAOT,iBAAiBT,QAAQiB,MAAM;AAC5C,WAAOD,OAAOE;EAChB;AACF,CAAA;",
|
|
6
|
-
"names": ["Capabilities", "contributes", "Relation", "createDocAccessor", "getRangeFromCursor", "contributes", "Capabilities", "AnchorSort", "key", "Markdown", "Document", "typename", "sort", "anchorA", "anchorB", "doc", "Relation", "getTarget", "accessor", "content", "target", "createDocAccessor", "undefined", "getStartPosition", "cursor", "range", "getRangeFromCursor", "start", "Number", "MAX_SAFE_INTEGER", "posA", "anchor", "posB"]
|
|
7
|
-
}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
translations
|
|
3
|
-
} from "./chunk-NXT2E2BG.mjs";
|
|
4
|
-
import {
|
|
5
|
-
MarkdownAction_exports,
|
|
6
|
-
Markdown_exports
|
|
7
|
-
} from "./chunk-CN35HEBX.mjs";
|
|
8
|
-
import "./chunk-BQTYJOFB.mjs";
|
|
9
|
-
|
|
10
|
-
// src/capabilities/app-graph-serializer.ts
|
|
11
|
-
import * as Function from "effect/Function";
|
|
12
|
-
import { Capabilities, chain, contributes, createIntent } from "@dxos/app-framework";
|
|
13
|
-
import { Obj } from "@dxos/echo";
|
|
14
|
-
import { SpaceAction } from "@dxos/plugin-space/types";
|
|
15
|
-
import { isSpace } from "@dxos/react-client/echo";
|
|
16
|
-
import { Collection } from "@dxos/schema";
|
|
17
|
-
var app_graph_serializer_default = ((context) => contributes(Capabilities.AppGraphSerializer, [
|
|
18
|
-
{
|
|
19
|
-
inputType: Markdown_exports.Document.typename,
|
|
20
|
-
outputType: "text/markdown",
|
|
21
|
-
// Reconcile with metadata serializers.
|
|
22
|
-
serialize: async (node) => {
|
|
23
|
-
const doc = node.data;
|
|
24
|
-
const content = await doc.content.load();
|
|
25
|
-
return {
|
|
26
|
-
name: doc.name || doc.fallbackName || translations[0]["en-US"][Markdown_exports.Document.typename]["object name placeholder"],
|
|
27
|
-
data: content.content,
|
|
28
|
-
type: "text/markdown"
|
|
29
|
-
};
|
|
30
|
-
},
|
|
31
|
-
deserialize: async (data, ancestors) => {
|
|
32
|
-
const space = ancestors.find(isSpace);
|
|
33
|
-
const target = ancestors.findLast((ancestor) => Obj.instanceOf(Collection.Collection, ancestor)) ?? space?.properties[Collection.Collection.typename]?.target;
|
|
34
|
-
if (!space || !target) {
|
|
35
|
-
return;
|
|
36
|
-
}
|
|
37
|
-
const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);
|
|
38
|
-
const result = await dispatch(Function.pipe(createIntent(MarkdownAction_exports.Create, {
|
|
39
|
-
name: data.name,
|
|
40
|
-
content: data.data
|
|
41
|
-
}), chain(SpaceAction.AddObject, {
|
|
42
|
-
target
|
|
43
|
-
})));
|
|
44
|
-
return result.data?.object;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
]));
|
|
48
|
-
export {
|
|
49
|
-
app_graph_serializer_default as default
|
|
50
|
-
};
|
|
51
|
-
//# sourceMappingURL=app-graph-serializer-BZJ4TQOE.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/capabilities/app-graph-serializer.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Function from 'effect/Function';\n\nimport { Capabilities, type PluginContext, chain, contributes, createIntent } from '@dxos/app-framework';\nimport { Obj } from '@dxos/echo';\nimport { SpaceAction } from '@dxos/plugin-space/types';\nimport { isSpace } from '@dxos/react-client/echo';\nimport { Collection } from '@dxos/schema';\n\nimport { translations } from '../translations';\nimport { Markdown, MarkdownAction } from '../types';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.AppGraphSerializer, [\n {\n inputType: Markdown.Document.typename,\n outputType: 'text/markdown',\n // Reconcile with metadata serializers.\n serialize: async (node) => {\n const doc = node.data;\n const content = await doc.content.load();\n return {\n name:\n doc.name ||\n doc.fallbackName ||\n translations[0]['en-US'][Markdown.Document.typename]['object name placeholder'],\n data: content.content,\n type: 'text/markdown',\n };\n },\n deserialize: async (data, ancestors) => {\n const space = ancestors.find(isSpace);\n const target =\n ancestors.findLast((ancestor) => Obj.instanceOf(Collection.Collection, ancestor)) ??\n space?.properties[Collection.Collection.typename]?.target;\n if (!space || !target) {\n return;\n }\n\n const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n const result = await dispatch(\n Function.pipe(\n createIntent(MarkdownAction.Create, { name: data.name, content: data.data }),\n chain(SpaceAction.AddObject, { target }),\n ),\n );\n\n return result.data?.object;\n },\n },\n ]);\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;AAIA,YAAYA,cAAc;AAE1B,SAASC,cAAkCC,OAAOC,aAAaC,oBAAoB;AACnF,SAASC,WAAW;AACpB,SAASC,mBAAmB;AAC5B,SAASC,eAAe;AACxB,SAASC,kBAAkB;AAK3B,IAAA,gCAAe,CAACC,YACdC,YAAYC,aAAaC,oBAAoB;EAC3C;IACEC,WAAWC,iBAASC,SAASC;IAC7BC,YAAY;;IAEZC,WAAW,OAAOC,SAAAA;AAChB,YAAMC,MAAMD,KAAKE;AACjB,YAAMC,UAAU,MAAMF,IAAIE,QAAQC,KAAI;AACtC,aAAO;QACLC,MACEJ,IAAII,QACJJ,IAAIK,gBACJC,aAAa,CAAA,EAAG,OAAA,EAASZ,iBAASC,SAASC,QAAQ,EAAE,yBAAA;QACvDK,MAAMC,QAAQA;QACdK,MAAM;MACR;IACF;IACAC,aAAa,OAAOP,MAAMQ,cAAAA;AACxB,YAAMC,QAAQD,UAAUE,KAAKC,OAAAA;AAC7B,YAAMC,SACJJ,UAAUK,SAAS,CAACC,aAAaC,IAAIC,WAAWC,WAAWA,YAAYH,QAAAA,CAAAA,KACvEL,OAAOS,WAAWD,WAAWA,WAAWtB,QAAQ,GAAGiB;AACrD,UAAI,CAACH,SAAS,CAACG,QAAQ;AACrB;MACF;AAEA,YAAM,EAAEO,iBAAiBC,SAAQ,IAAKhC,QAAQiC,cAAc/B,aAAagC,gBAAgB;AACzF,YAAMC,SAAS,MAAMH,SACVI,cACPC,aAAaC,uBAAeC,QAAQ;QAAExB,MAAMH,KAAKG;QAAMF,SAASD,KAAKA;MAAK,CAAA,GAC1E4B,MAAMC,YAAYC,WAAW;QAAElB;MAAO,CAAA,CAAA,CAAA;AAI1C,aAAOW,OAAOvB,MAAM+B;IACtB;EACF;CACD;",
|
|
6
|
-
"names": ["Function", "Capabilities", "chain", "contributes", "createIntent", "Obj", "SpaceAction", "isSpace", "Collection", "context", "contributes", "Capabilities", "AppGraphSerializer", "inputType", "Markdown", "Document", "typename", "outputType", "serialize", "node", "doc", "data", "content", "load", "name", "fallbackName", "translations", "type", "deserialize", "ancestors", "space", "find", "isSpace", "target", "findLast", "ancestor", "Obj", "instanceOf", "Collection", "properties", "dispatchPromise", "dispatch", "getCapability", "IntentDispatcher", "result", "pipe", "createIntent", "MarkdownAction", "Create", "chain", "SpaceAction", "AddObject", "object"]
|
|
7
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
MARKDOWN_BLUEPRINT_KEY,
|
|
3
|
-
MarkdownBlueprint,
|
|
4
|
-
blueprint_definition_default
|
|
5
|
-
} from "./chunk-BE3IO2CM.mjs";
|
|
6
|
-
import "./chunk-CN35HEBX.mjs";
|
|
7
|
-
import "./chunk-BQTYJOFB.mjs";
|
|
8
|
-
export {
|
|
9
|
-
MARKDOWN_BLUEPRINT_KEY,
|
|
10
|
-
MarkdownBlueprint,
|
|
11
|
-
blueprint_definition_default as default
|
|
12
|
-
};
|
|
13
|
-
//# sourceMappingURL=blueprint-definition-HED54GGW.mjs.map
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
// src/capabilities/index.ts
|
|
2
|
-
import { lazy } from "@dxos/app-framework";
|
|
3
|
-
var AnchorSort = lazy(() => import("./anchor-sort-3MYLO74J.mjs"));
|
|
4
|
-
var AppGraphSerializer = lazy(() => import("./app-graph-serializer-BZJ4TQOE.mjs"));
|
|
5
|
-
var BlueprintDefinition = lazy(() => import("./blueprint-definition-HED54GGW.mjs"));
|
|
6
|
-
var IntentResolver = lazy(() => import("./intent-resolver-55ASQRIW.mjs"));
|
|
7
|
-
var ReactSurface = lazy(() => import("./react-surface-GPD6T435.mjs"));
|
|
8
|
-
var MarkdownSettings = lazy(() => import("./settings-G3ZOXJQY.mjs"));
|
|
9
|
-
var MarkdownState = lazy(() => import("./state-BTUKVZHY.mjs"));
|
|
10
|
-
|
|
11
|
-
export {
|
|
12
|
-
AnchorSort,
|
|
13
|
-
AppGraphSerializer,
|
|
14
|
-
BlueprintDefinition,
|
|
15
|
-
IntentResolver,
|
|
16
|
-
ReactSurface,
|
|
17
|
-
MarkdownSettings,
|
|
18
|
-
MarkdownState
|
|
19
|
-
};
|
|
20
|
-
//# sourceMappingURL=chunk-3IPVL3E4.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/capabilities/index.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const AnchorSort: any = lazy(() => import('./anchor-sort'));\nexport const AppGraphSerializer = lazy(() => import('./app-graph-serializer'));\nexport const BlueprintDefinition = lazy(() => import('./blueprint-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'));\n\nexport * from './blueprint-definition';\nexport * from './capabilities';\n"],
|
|
5
|
-
"mappings": ";AAIA,SAASA,YAAY;AAEd,IAAMC,aAAkBC,KAAK,MAAM,OAAO,4BAAA,CAAA;AAC1C,IAAMC,qBAAqBD,KAAK,MAAM,OAAO,qCAAA,CAAA;AAC7C,IAAME,sBAAsBF,KAAK,MAAM,OAAO,qCAAA,CAAA;AAC9C,IAAMG,iBAAiBH,KAAK,MAAM,OAAO,gCAAA,CAAA;AACzC,IAAMI,eAAeJ,KAAK,MAAM,OAAO,8BAAA,CAAA;AACvC,IAAMK,mBAAmBL,KAAK,MAAM,OAAO,yBAAA,CAAA;AAC3C,IAAMM,gBAAgBN,KAAK,MAAM,OAAO,sBAAA,CAAA;",
|
|
6
|
-
"names": ["lazy", "AnchorSort", "lazy", "AppGraphSerializer", "BlueprintDefinition", "IntentResolver", "ReactSurface", "MarkdownSettings", "MarkdownState"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/capabilities/blueprint-definition.ts", "../../../src/functions/create.ts", "../../../src/functions/open.ts", "../../../src/functions/update.ts", "../../../src/functions/index.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes } from '@dxos/app-framework';\nimport { Blueprint, Template } from '@dxos/blueprints';\nimport { type FunctionDefinition } from '@dxos/functions';\nimport { trim } from '@dxos/util';\n\nimport { MarkdownFunction } from '../functions';\n\nconst functions: FunctionDefinition[] = [MarkdownFunction.create, MarkdownFunction.open, MarkdownFunction.update];\n\nexport const MARKDOWN_BLUEPRINT_KEY = 'dxos.org/blueprint/markdown';\n\nexport const MarkdownBlueprint: Blueprint.Blueprint = Blueprint.make({\n key: MARKDOWN_BLUEPRINT_KEY,\n name: 'Markdown',\n tools: Blueprint.toolDefinitions({ functions }),\n instructions: Template.make({\n // TODO(wittjosiah): Move example to function input schema annotation.\n source: trim`\n {{! Markdown }}\n\n You can create, read 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 \n Example:\n ${'```'}diff\n - \"There is a tyop in this sentence.\"\n + \"There is a typo in this sentence.\"\n - \"This id good.\"\n + \"This sentence is really good.\"\n ${'```'}\n `,\n }),\n});\n\nexport default () => [\n contributes(Capabilities.Functions, functions),\n contributes(Capabilities.BlueprintDefinition, MarkdownBlueprint),\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 { Obj } from '@dxos/echo';\nimport { defineFunction } from '@dxos/functions';\nimport { Collection } from '@dxos/schema';\n\nimport { Markdown } from '../types';\n\nexport default defineFunction({\n key: 'dxos.org/function/markdown/create',\n name: 'Create',\n description: 'Creates a new markdown document and adds it to the space.',\n inputSchema: Schema.Struct({\n name: Schema.String,\n content: Schema.String,\n }),\n outputSchema: Schema.Struct({\n id: ArtifactId,\n }),\n handler: Effect.fn(function* ({ data: { name, content } }) {\n const object = Markdown.make({ name, content });\n yield* Collection.add({ object });\n\n return {\n id: Obj.getDXN(object).toString(),\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 } 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", "//\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/update',\n name: 'Update',\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 2024 DXOS.org\n//\n\nimport { default as create } from './create';\nimport { default as open } from './open';\nimport { default as update } from './update';\n\nexport const MarkdownFunction = {\n create,\n open,\n update,\n};\n"],
|
|
5
|
-
"mappings": ";;;;;AAIA,SAASA,cAAcC,mBAAmB;AAC1C,SAASC,WAAWC,gBAAgB;AAEpC,SAASC,QAAAA,aAAY;;;ACHrB,YAAYC,YAAY;AACxB,YAAYC,YAAY;AAExB,SAASC,kBAAkB;AAC3B,SAASC,WAAW;AACpB,SAASC,sBAAsB;AAC/B,SAASC,kBAAkB;AAI3B,IAAA,iBAAeC,eAAe;EAC5BC,KAAK;EACLC,MAAM;EACNC,aAAa;EACbC,aAAoBC,cAAO;IACzBH,MAAaI;IACbC,SAAgBD;EAClB,CAAA;EACAE,cAAqBH,cAAO;IAC1BI,IAAIC;EACN,CAAA;EACAC,SAAgBC,UAAG,WAAW,EAAEC,MAAM,EAAEX,MAAMK,QAAO,EAAE,GAAE;AACvD,UAAMO,SAASC,iBAASC,KAAK;MAAEd;MAAMK;IAAQ,CAAA;AAC7C,WAAOU,WAAWC,IAAI;MAAEJ;IAAO,CAAA;AAE/B,WAAO;MACLL,IAAIU,IAAIC,OAAON,MAAAA,EAAQO,SAAQ;IACjC;EACF,CAAA;AACF,CAAA;;;AC7BA,YAAYC,aAAY;AACxB,YAAYC,aAAY;AAExB,SAASC,cAAAA,mBAAkB;AAC3B,SAASC,iBAAiBC,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,gBAAgBC,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;;;AC3BA,YAAYa,aAAY;AACxB,YAAYC,aAAY;AAExB,SAASC,cAAAA,aAAYC,kBAAkB;AACvC,SAASC,yBAAyB;AAClC,SAASC,mBAAAA,kBAAiBC,kBAAAA,uBAAsB;AAChD,SAASC,YAAY;AAKrB,IAAA,iBAAeC,gBAAe;EAC5BC,KAAK;EACLC,MAAM;EACNC,aAAaC;;;EAGbC,aAAoBC,eAAO;IACzBC,IAAIC,YAAWC,YAAY;MACzBN,aAAa;IACf,CAAA;IACAO,OAAcC,cAAaC,cAAM,EAAEH,YAAY;MAC7CN,aAAa;IACf,CAAA;EACF,CAAA;EACAU,cAAqBC;EACrBC,SAAgBC,WAAG,WAAW,EAAEC,MAAM,EAAEV,IAAIG,MAAK,EAAE,GAAE;AACnD,UAAMQ,SAAS,OAAOC,iBAAgBC,QAAQZ,YAAWa,MAAMd,EAAAA,GAAKe,iBAASC,QAAQ;AACrF,UAAMC,UAAU,OAAcC,gBAAQ,MAAMP,OAAOM,QAAQE,KAAI,CAAA;AAC/D,UAAMC,WAAWC,kBAAkBJ,SAAS;MAAC;KAAU;AACvDK,eAAWF,UAAUjB,KAAAA;EACvB,CAAA;AACF,CAAA;;;AC5BO,IAAMoB,mBAAmB;EAC9BC;EACAC;EACAC;AACF;;;AJDA,IAAMC,YAAkC;EAACC,iBAAiBC;EAAQD,iBAAiBE;EAAMF,iBAAiBG;;AAEnG,IAAMC,yBAAyB;AAE/B,IAAMC,oBAAyCC,UAAUC,KAAK;EACnEC,KAAKJ;EACLK,MAAM;EACNC,OAAOJ,UAAUK,gBAAgB;IAAEZ;EAAU,CAAA;EAC7Ca,cAAcC,SAASN,KAAK;;IAE1BO,QAAQC;;;;;;;;QAQJ,KAAA;;;;;QAKA,KAAA;;EAEN,CAAA;AACF,CAAA;AAEA,IAAA,gCAAe,MAAM;EACnBC,YAAYC,aAAaC,WAAWnB,SAAAA;EACpCiB,YAAYC,aAAaE,qBAAqBd,iBAAAA;;",
|
|
6
|
-
"names": ["Capabilities", "contributes", "Blueprint", "Template", "trim", "Effect", "Schema", "ArtifactId", "Obj", "defineFunction", "Collection", "defineFunction", "key", "name", "description", "inputSchema", "Struct", "String", "content", "outputSchema", "id", "ArtifactId", "handler", "fn", "data", "object", "Markdown", "make", "Collection", "add", "Obj", "getDXN", "toString", "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", "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", "MarkdownFunction", "create", "open", "update", "functions", "MarkdownFunction", "create", "open", "update", "MARKDOWN_BLUEPRINT_KEY", "MarkdownBlueprint", "Blueprint", "make", "key", "name", "tools", "toolDefinitions", "instructions", "Template", "source", "trim", "contributes", "Capabilities", "Functions", "BlueprintDefinition"]
|
|
7
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __export = (target, all) => {
|
|
3
|
-
for (var name in all)
|
|
4
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
5
|
-
};
|
|
6
|
-
|
|
7
|
-
// src/meta.ts
|
|
8
|
-
import { trim } from "@dxos/util";
|
|
9
|
-
var meta = {
|
|
10
|
-
id: "dxos.org/plugin/markdown",
|
|
11
|
-
name: "Markdown",
|
|
12
|
-
description: trim`
|
|
13
|
-
Full-featured collaborative markdown editor with real-time editing, inline comments, and rich formatting.
|
|
14
|
-
Supports AI-powered editing assistance and seamlessly integrates with other workspace objects.
|
|
15
|
-
`,
|
|
16
|
-
icon: "ph--text-aa--regular",
|
|
17
|
-
iconHue: "indigo",
|
|
18
|
-
source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-markdown",
|
|
19
|
-
screenshots: [
|
|
20
|
-
"https://dxos.network/plugin-details-markdown-dark.png"
|
|
21
|
-
]
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
export {
|
|
25
|
-
__export,
|
|
26
|
-
meta
|
|
27
|
-
};
|
|
28
|
-
//# sourceMappingURL=chunk-BQTYJOFB.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/meta.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\nimport { trim } from '@dxos/util';\n\nexport const meta: PluginMeta = {\n id: 'dxos.org/plugin/markdown',\n name: 'Markdown',\n description: trim`\n Full-featured collaborative markdown editor with real-time editing, inline comments, and rich formatting.\n Supports AI-powered editing assistance and seamlessly integrates with other workspace objects.\n `,\n icon: 'ph--text-aa--regular',\n iconHue: 'indigo',\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-markdown',\n screenshots: ['https://dxos.network/plugin-details-markdown-dark.png'],\n};\n"],
|
|
5
|
-
"mappings": ";;;;;;;AAKA,SAASA,YAAY;AAEd,IAAMC,OAAmB;EAC9BC,IAAI;EACJC,MAAM;EACNC,aAAaC;;;;EAIbC,MAAM;EACNC,SAAS;EACTC,QAAQ;EACRC,aAAa;IAAC;;AAChB;",
|
|
6
|
-
"names": ["trim", "meta", "id", "name", "description", "trim", "icon", "iconHue", "source", "screenshots"]
|
|
7
|
-
}
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
__export,
|
|
3
|
-
meta
|
|
4
|
-
} from "./chunk-BQTYJOFB.mjs";
|
|
5
|
-
|
|
6
|
-
// src/types/MarkdownAction.ts
|
|
7
|
-
var MarkdownAction_exports = {};
|
|
8
|
-
__export(MarkdownAction_exports, {
|
|
9
|
-
Create: () => Create,
|
|
10
|
-
SetViewMode: () => SetViewMode
|
|
11
|
-
});
|
|
12
|
-
import * as Schema2 from "effect/Schema";
|
|
13
|
-
import { EditorViewMode as EditorViewMode2 } from "@dxos/react-ui-editor/types";
|
|
14
|
-
|
|
15
|
-
// src/types/Markdown.ts
|
|
16
|
-
var Markdown_exports = {};
|
|
17
|
-
__export(Markdown_exports, {
|
|
18
|
-
Document: () => Document,
|
|
19
|
-
Settings: () => Settings,
|
|
20
|
-
make: () => make
|
|
21
|
-
});
|
|
22
|
-
import * as Schema from "effect/Schema";
|
|
23
|
-
import { Obj, Ref, Type } from "@dxos/echo";
|
|
24
|
-
import { DescriptionAnnotation, FormInputAnnotation, LabelAnnotation } from "@dxos/echo/internal";
|
|
25
|
-
import { EditorInputMode, EditorViewMode } from "@dxos/react-ui-editor/types";
|
|
26
|
-
import { Text } from "@dxos/schema";
|
|
27
|
-
var Document = Schema.Struct({
|
|
28
|
-
name: Schema.optional(Schema.String),
|
|
29
|
-
description: Schema.optional(Schema.String),
|
|
30
|
-
fallbackName: Schema.String.pipe(FormInputAnnotation.set(false), Schema.optional),
|
|
31
|
-
content: Type.Ref(Text.Text).pipe(FormInputAnnotation.set(false))
|
|
32
|
-
}).pipe(Type.Obj({
|
|
33
|
-
typename: "dxos.org/type/Document",
|
|
34
|
-
version: "0.1.0"
|
|
35
|
-
}), LabelAnnotation.set([
|
|
36
|
-
"name",
|
|
37
|
-
"fallbackName"
|
|
38
|
-
]), DescriptionAnnotation.set("description"));
|
|
39
|
-
var make = ({ content = "", ...props } = {}) => Obj.make(Document, {
|
|
40
|
-
...props,
|
|
41
|
-
content: Ref.make(Text.make(content))
|
|
42
|
-
});
|
|
43
|
-
var Settings = Schema.mutable(Schema.Struct({
|
|
44
|
-
defaultViewMode: EditorViewMode,
|
|
45
|
-
editorInputMode: Schema.optional(EditorInputMode),
|
|
46
|
-
experimental: Schema.optional(Schema.Boolean),
|
|
47
|
-
debug: Schema.optional(Schema.Boolean),
|
|
48
|
-
toolbar: Schema.optional(Schema.Boolean),
|
|
49
|
-
typewriter: Schema.optional(Schema.String),
|
|
50
|
-
// TODO(burdon): Per document settings.
|
|
51
|
-
numberedHeadings: Schema.optional(Schema.Boolean),
|
|
52
|
-
folding: Schema.optional(Schema.Boolean)
|
|
53
|
-
}));
|
|
54
|
-
|
|
55
|
-
// src/types/MarkdownAction.ts
|
|
56
|
-
var Create = class extends Schema2.TaggedClass()(`${meta.id}/action/create`, {
|
|
57
|
-
input: Schema2.Struct({
|
|
58
|
-
name: Schema2.optional(Schema2.String),
|
|
59
|
-
content: Schema2.optional(Schema2.String)
|
|
60
|
-
}),
|
|
61
|
-
output: Schema2.Struct({
|
|
62
|
-
object: Document
|
|
63
|
-
})
|
|
64
|
-
}) {
|
|
65
|
-
};
|
|
66
|
-
var SetViewMode = class extends Schema2.TaggedClass()(`${meta.id}/action/set-view-mode`, {
|
|
67
|
-
input: Schema2.Struct({
|
|
68
|
-
id: Schema2.String,
|
|
69
|
-
viewMode: EditorViewMode2
|
|
70
|
-
}),
|
|
71
|
-
output: Schema2.Void
|
|
72
|
-
}) {
|
|
73
|
-
};
|
|
74
|
-
|
|
75
|
-
export {
|
|
76
|
-
Markdown_exports,
|
|
77
|
-
MarkdownAction_exports
|
|
78
|
-
};
|
|
79
|
-
//# sourceMappingURL=chunk-CN35HEBX.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
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, FormInputAnnotation, LabelAnnotation } from '@dxos/echo/internal';\nimport { EditorInputMode, EditorViewMode } from '@dxos/react-ui-editor/types';\nimport { Text } 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.String.pipe(FormInputAnnotation.set(false), Schema.optional),\n content: Type.Ref(Text.Text).pipe(FormInputAnnotation.set(false)),\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);\n\nexport type Document = Schema.Schema.Type<typeof Document>;\n\n/**\n * Document factory.\n */\nexport const make = ({\n content = '',\n ...props\n}: Partial<{ name: string; fallbackName: string; content: string }> = {}) =>\n Obj.make(Document, { ...props, content: Ref.make(Text.make(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,qBAAqBC,uBAAuB;AAC5E,SAASC,iBAAiBC,sBAAsB;AAChD,SAASC,YAAY;AAKd,IAAMC,WAAkBC,cAAO;EACpCC,MAAaC,gBAAgBC,aAAM;EACnCC,aAAoBF,gBAAgBC,aAAM;EAC1CE,cAAqBF,cAAOG,KAAKC,oBAAoBC,IAAI,KAAA,GAAeN,eAAQ;EAChFO,SAASC,KAAKC,IAAIC,KAAKA,IAAI,EAAEN,KAAKC,oBAAoBC,IAAI,KAAA,CAAA;AAC5D,CAAA,EAAGF,KACDI,KAAKG,IAAI;EACPC,UAAU;EACVC,SAAS;AACX,CAAA,GACAC,gBAAgBR,IAAI;EAAC;EAAQ;CAAe,GAC5CS,sBAAsBT,IAAI,aAAA,CAAA;AAQrB,IAAMU,OAAO,CAAC,EACnBT,UAAU,IACV,GAAGU,MAAAA,IACiE,CAAC,MACrEN,IAAIK,KAAKnB,UAAU;EAAE,GAAGoB;EAAOV,SAASE,IAAIO,KAAKN,KAAKM,KAAKT,OAAAA,CAAAA;AAAU,CAAA;AAKhE,IAAMW,WAAkBC,eACtBrB,cAAO;EACZsB,iBAAiBC;EACjBC,iBAAwBtB,gBAASuB,eAAAA;EACjCC,cAAqBxB,gBAAgByB,cAAO;EAC5CC,OAAc1B,gBAAgByB,cAAO;EACrCE,SAAgB3B,gBAAgByB,cAAO;EACvCG,YAAmB5B,gBAAgBC,aAAM;;EAEzC4B,kBAAyB7B,gBAAgByB,cAAO;EAChDK,SAAgB9B,gBAAgByB,cAAO;AACzC,CAAA,CAAA;;;ADzCK,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", "FormInputAnnotation", "LabelAnnotation", "EditorInputMode", "EditorViewMode", "Text", "Document", "Struct", "name", "optional", "String", "description", "fallbackName", "pipe", "FormInputAnnotation", "set", "content", "Type", "Ref", "Text", "Obj", "typename", "version", "LabelAnnotation", "DescriptionAnnotation", "make", "props", "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,96 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
getContentSnippet,
|
|
3
|
-
getFallbackName
|
|
4
|
-
} from "./chunk-OKNQ57GF.mjs";
|
|
5
|
-
import {
|
|
6
|
-
Markdown_exports
|
|
7
|
-
} from "./chunk-CN35HEBX.mjs";
|
|
8
|
-
import {
|
|
9
|
-
meta
|
|
10
|
-
} from "./chunk-BQTYJOFB.mjs";
|
|
11
|
-
|
|
12
|
-
// src/components/MarkdownCard/MarkdownCard.tsx
|
|
13
|
-
import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
|
|
14
|
-
import * as Function from "effect/Function";
|
|
15
|
-
import React, { useCallback } from "react";
|
|
16
|
-
import { LayoutAction, chain, createIntent } from "@dxos/app-framework";
|
|
17
|
-
import { useIntentDispatcher } from "@dxos/app-framework/react";
|
|
18
|
-
import { Obj } from "@dxos/echo";
|
|
19
|
-
import { IconButton, useTranslation } from "@dxos/react-ui";
|
|
20
|
-
import { Card } from "@dxos/react-ui-stack";
|
|
21
|
-
import { Text } from "@dxos/schema";
|
|
22
|
-
var MarkdownCard = ({ subject, role }) => {
|
|
23
|
-
var _effect = _useSignals();
|
|
24
|
-
try {
|
|
25
|
-
const { dispatchPromise: dispatch } = useIntentDispatcher();
|
|
26
|
-
const { t } = useTranslation(meta.id);
|
|
27
|
-
const snippet = getSnippet(subject, t("fallback abstract"));
|
|
28
|
-
const info = getInfo(subject);
|
|
29
|
-
const handleNavigate = useCallback(() => dispatch(Function.pipe(createIntent(LayoutAction.UpdatePopover, {
|
|
30
|
-
part: "popover",
|
|
31
|
-
subject: null,
|
|
32
|
-
options: {
|
|
33
|
-
state: false,
|
|
34
|
-
anchorId: ""
|
|
35
|
-
}
|
|
36
|
-
}), chain(LayoutAction.Open, {
|
|
37
|
-
part: "main",
|
|
38
|
-
subject: [
|
|
39
|
-
Obj.getDXN(subject).toString()
|
|
40
|
-
]
|
|
41
|
-
}))), [
|
|
42
|
-
dispatch,
|
|
43
|
-
subject
|
|
44
|
-
]);
|
|
45
|
-
return /* @__PURE__ */ React.createElement(Card.SurfaceRoot, {
|
|
46
|
-
role
|
|
47
|
-
}, /* @__PURE__ */ React.createElement(Card.Heading, {
|
|
48
|
-
classNames: "flex items-center"
|
|
49
|
-
}, getTitle(subject, t("fallback title")), /* @__PURE__ */ React.createElement("span", {
|
|
50
|
-
className: "grow"
|
|
51
|
-
}), /* @__PURE__ */ React.createElement(IconButton, {
|
|
52
|
-
iconOnly: true,
|
|
53
|
-
icon: "ph--arrow-right--regular",
|
|
54
|
-
label: t("navigate to document label"),
|
|
55
|
-
onClick: handleNavigate
|
|
56
|
-
})), snippet && /* @__PURE__ */ React.createElement(Card.Text, {
|
|
57
|
-
classNames: "line-clamp-3 text-sm text-description"
|
|
58
|
-
}, snippet), /* @__PURE__ */ React.createElement(Card.Text, {
|
|
59
|
-
classNames: "text-xs text-description"
|
|
60
|
-
}, info.words, " ", t("words label", {
|
|
61
|
-
count: info.words
|
|
62
|
-
})));
|
|
63
|
-
} finally {
|
|
64
|
-
_effect.f();
|
|
65
|
-
}
|
|
66
|
-
};
|
|
67
|
-
var getInfo = (subject) => {
|
|
68
|
-
const text = (Obj.instanceOf(Markdown_exports.Document, subject) ? subject.content?.target?.content : subject.content) ?? "";
|
|
69
|
-
return {
|
|
70
|
-
words: text.split(" ").length
|
|
71
|
-
};
|
|
72
|
-
};
|
|
73
|
-
var getTitle = (subject, fallback) => {
|
|
74
|
-
if (Obj.instanceOf(Markdown_exports.Document, subject)) {
|
|
75
|
-
const title = Obj.getLabel(subject);
|
|
76
|
-
return title ?? getFallbackName(subject.content?.target?.content ?? fallback);
|
|
77
|
-
} else if (Obj.instanceOf(Text.Text, subject)) {
|
|
78
|
-
return getFallbackName(subject.content);
|
|
79
|
-
}
|
|
80
|
-
};
|
|
81
|
-
var getSnippet = (subject, fallback) => {
|
|
82
|
-
if (Obj.instanceOf(Markdown_exports.Document, subject)) {
|
|
83
|
-
return Obj.getDescription(subject) || getContentSnippet(subject.content?.target?.content ?? fallback);
|
|
84
|
-
} else if (Obj.instanceOf(Text.Text, subject)) {
|
|
85
|
-
return getContentSnippet(subject.content ?? fallback);
|
|
86
|
-
}
|
|
87
|
-
};
|
|
88
|
-
|
|
89
|
-
// src/components/MarkdownCard/index.ts
|
|
90
|
-
var MarkdownCard_default = MarkdownCard;
|
|
91
|
-
|
|
92
|
-
export {
|
|
93
|
-
MarkdownCard,
|
|
94
|
-
MarkdownCard_default
|
|
95
|
-
};
|
|
96
|
-
//# sourceMappingURL=chunk-DLZ5RR3P.mjs.map
|