@dxos/plugin-markdown 0.8.4-main.74a063c4e0 → 0.8.4-main.765dc60934
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/LICENSE +102 -5
- package/README.md +1 -1
- package/dist/lib/neutral/EditableMarkdownCard-LXBXN3OW.mjs +32 -0
- package/dist/lib/neutral/EditableMarkdownCard-LXBXN3OW.mjs.map +7 -0
- package/dist/lib/neutral/MarkdownArticle-Z4QRU3WD.mjs +126 -0
- package/dist/lib/neutral/MarkdownArticle-Z4QRU3WD.mjs.map +7 -0
- package/dist/lib/neutral/MarkdownCard-INMBLUL4.mjs +102 -0
- package/dist/lib/neutral/MarkdownCard-INMBLUL4.mjs.map +7 -0
- package/dist/lib/neutral/MarkdownPlugin.mjs +10 -0
- package/dist/lib/neutral/MarkdownPlugin.node.mjs +25 -0
- package/dist/lib/neutral/MarkdownPlugin.node.mjs.map +7 -0
- package/dist/lib/neutral/MarkdownSettings-YCTZJL5V.mjs +32 -0
- package/dist/lib/neutral/MarkdownSettings-YCTZJL5V.mjs.map +7 -0
- package/dist/lib/neutral/anchor-sort-L4VCKDO6.mjs +32 -0
- package/dist/lib/neutral/anchor-sort-L4VCKDO6.mjs.map +7 -0
- package/dist/lib/neutral/app-graph-serializer-YI72EEVM.mjs +55 -0
- package/dist/lib/neutral/app-graph-serializer-YI72EEVM.mjs.map +7 -0
- package/dist/lib/neutral/blueprint-definition-33OK2KUL.mjs +15 -0
- package/dist/lib/neutral/blueprint-definition-33OK2KUL.mjs.map +7 -0
- package/dist/lib/neutral/blueprints/index.mjs +8 -0
- package/dist/lib/neutral/capabilities/index.mjs +25 -0
- package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
- package/dist/lib/neutral/capabilities/node.mjs +11 -0
- package/dist/lib/neutral/capabilities/node.mjs.map +7 -0
- package/dist/lib/neutral/chunk-6N7AD3IU.mjs +8 -0
- package/dist/lib/neutral/chunk-6N7AD3IU.mjs.map +7 -0
- package/dist/lib/neutral/chunk-KDN4GKG2.mjs +98 -0
- package/dist/lib/neutral/chunk-KDN4GKG2.mjs.map +7 -0
- package/dist/lib/{browser/blueprints/index.mjs → neutral/chunk-LXNSKCPD.mjs} +10 -17
- package/dist/lib/neutral/chunk-LXNSKCPD.mjs.map +7 -0
- package/dist/lib/neutral/chunk-LYUELXJH.mjs +57 -0
- package/dist/lib/neutral/chunk-LYUELXJH.mjs.map +7 -0
- package/dist/lib/neutral/chunk-SOLAMEK3.mjs +276 -0
- package/dist/lib/neutral/chunk-SOLAMEK3.mjs.map +7 -0
- package/dist/lib/neutral/chunk-YC2OAUM7.mjs +22 -0
- package/dist/lib/neutral/chunk-YC2OAUM7.mjs.map +7 -0
- package/dist/lib/neutral/comment-config-7VTHRUIZ.mjs +30 -0
- package/dist/lib/neutral/comment-config-7VTHRUIZ.mjs.map +7 -0
- package/dist/lib/neutral/components/index.mjs +370 -0
- package/dist/lib/neutral/components/index.mjs.map +7 -0
- package/dist/lib/neutral/containers/index.mjs +13 -0
- package/dist/lib/neutral/containers/index.mjs.map +7 -0
- package/dist/lib/{browser/create-HSXPXCC5.mjs → neutral/create-3PGJ2NEK.mjs} +5 -7
- package/dist/lib/neutral/create-3PGJ2NEK.mjs.map +7 -0
- package/dist/lib/{browser/create-markdown-WB7DH3UF.mjs → neutral/create-markdown-5LS46GMH.mjs} +5 -7
- package/dist/lib/neutral/create-markdown-5LS46GMH.mjs.map +7 -0
- package/dist/lib/neutral/create-object-ZA6VXLJJ.mjs +27 -0
- package/dist/lib/neutral/create-object-ZA6VXLJJ.mjs.map +7 -0
- package/dist/lib/neutral/hooks/index.mjs +321 -0
- package/dist/lib/neutral/hooks/index.mjs.map +7 -0
- package/dist/lib/neutral/index.mjs +42 -0
- package/dist/lib/neutral/meta.json +1 -0
- package/dist/lib/neutral/meta.mjs +8 -0
- package/dist/lib/neutral/meta.mjs.map +7 -0
- package/dist/lib/{browser/open-N6PAX6DY.mjs → neutral/open-WCYGBLAG.mjs} +5 -6
- package/dist/lib/neutral/open-WCYGBLAG.mjs.map +7 -0
- package/dist/lib/neutral/operation-handler-2ARMPBGZ.mjs +13 -0
- package/dist/lib/neutral/operation-handler-2ARMPBGZ.mjs.map +7 -0
- package/dist/lib/neutral/operations/index.mjs +8 -0
- package/dist/lib/neutral/operations/index.mjs.map +7 -0
- package/dist/lib/neutral/plugin.mjs +16 -0
- package/dist/lib/neutral/plugin.mjs.map +7 -0
- package/dist/lib/neutral/react-surface-SCIL76V5.mjs +119 -0
- package/dist/lib/neutral/react-surface-SCIL76V5.mjs.map +7 -0
- package/dist/lib/{browser/scroll-to-anchor-5M4F24AB.mjs → neutral/scroll-to-anchor-6FIOKVKT.mjs} +7 -9
- package/dist/lib/neutral/scroll-to-anchor-6FIOKVKT.mjs.map +7 -0
- package/dist/lib/neutral/set-view-mode-37RSPFEN.mjs +24 -0
- package/dist/lib/neutral/set-view-mode-37RSPFEN.mjs.map +7 -0
- package/dist/lib/neutral/settings-TDGDLCUR.mjs +34 -0
- package/dist/lib/neutral/settings-TDGDLCUR.mjs.map +7 -0
- package/dist/lib/neutral/state-5COCF5PN.mjs +44 -0
- package/dist/lib/neutral/state-5COCF5PN.mjs.map +7 -0
- package/dist/lib/neutral/testing.mjs +22 -0
- package/dist/lib/neutral/testing.mjs.map +7 -0
- package/dist/lib/neutral/translations.mjs +43 -0
- package/dist/lib/neutral/translations.mjs.map +7 -0
- package/dist/lib/neutral/types/index.mjs +16 -0
- package/dist/lib/neutral/types/index.mjs.map +7 -0
- package/dist/lib/{browser/update-5QIRVGTL.mjs → neutral/update-markdown-5EDRD3SH.mjs} +8 -9
- package/dist/lib/neutral/update-markdown-5EDRD3SH.mjs.map +7 -0
- package/dist/types/src/MarkdownPlugin.d.ts +1 -0
- package/dist/types/src/MarkdownPlugin.d.ts.map +1 -1
- package/dist/types/src/{cli/plugin.d.ts → MarkdownPlugin.node.d.ts} +2 -1
- package/dist/types/src/MarkdownPlugin.node.d.ts.map +1 -0
- package/dist/types/src/MarkdownPlugin.test.d.ts +2 -0
- package/dist/types/src/MarkdownPlugin.test.d.ts.map +1 -0
- package/dist/types/src/blueprints/markdown-blueprint.d.ts +2 -2
- package/dist/types/src/blueprints/markdown-blueprint.d.ts.map +1 -1
- package/dist/types/src/capabilities/anchor-sort.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -1
- package/dist/types/src/capabilities/artifact-definition.d.ts.map +1 -1
- package/dist/types/src/capabilities/blueprint-definition.d.ts +2 -2
- package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -1
- package/dist/types/src/capabilities/comment-config.d.ts +12 -0
- package/dist/types/src/capabilities/comment-config.d.ts.map +1 -0
- package/dist/types/src/capabilities/create-object.d.ts +11 -0
- package/dist/types/src/capabilities/create-object.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +17 -22
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/node.d.ts +7 -1
- package/dist/types/src/capabilities/node.d.ts.map +1 -1
- package/dist/types/src/capabilities/operation-handler.d.ts +1 -1
- package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
- package/dist/types/src/capabilities/settings.d.ts +1 -19
- package/dist/types/src/capabilities/settings.d.ts.map +1 -1
- package/dist/types/src/capabilities/state.d.ts +2 -2
- package/dist/types/src/capabilities/state.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts +28 -22
- package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts +2 -2
- package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts +2 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts +2 -6
- package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts +1 -1
- package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownSettings/MarkdownSettings.stories.d.ts +46 -90
- package/dist/types/src/components/MarkdownSettings/MarkdownSettings.stories.d.ts.map +1 -1
- package/dist/types/src/containers/EditableMarkdownCard/EditableMarkdownCard.d.ts +15 -0
- package/dist/types/src/containers/EditableMarkdownCard/EditableMarkdownCard.d.ts.map +1 -0
- package/dist/types/src/containers/EditableMarkdownCard/index.d.ts +3 -0
- package/dist/types/src/containers/EditableMarkdownCard/index.d.ts.map +1 -0
- package/dist/types/src/containers/{MarkdownContainer/MarkdownContainer.d.ts → MarkdownArticle/MarkdownArticle.d.ts} +9 -9
- package/dist/types/src/containers/MarkdownArticle/MarkdownArticle.d.ts.map +1 -0
- package/dist/types/src/containers/MarkdownArticle/MarkdownArticle.stories.d.ts +97 -0
- package/dist/types/src/containers/MarkdownArticle/MarkdownArticle.stories.d.ts.map +1 -0
- package/dist/types/src/containers/MarkdownArticle/index.d.ts +3 -0
- package/dist/types/src/containers/MarkdownArticle/index.d.ts.map +1 -0
- package/dist/types/src/containers/MarkdownCard/MarkdownCard.d.ts.map +1 -1
- package/dist/types/src/containers/MarkdownCard/MarkdownCard.stories.d.ts +1 -1
- package/dist/types/src/containers/MarkdownCard/MarkdownCard.stories.d.ts.map +1 -1
- package/dist/types/src/containers/MarkdownCard/snippet.d.ts +7 -5
- package/dist/types/src/containers/MarkdownCard/snippet.d.ts.map +1 -1
- package/dist/types/src/containers/index.d.ts +3 -2
- package/dist/types/src/containers/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 -1
- package/dist/types/src/hooks/useExtensions.d.ts.map +1 -1
- package/dist/types/src/hooks/useLinkQuery.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +2 -3
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/operations/create-markdown.d.ts +3 -3
- package/dist/types/src/operations/create-markdown.d.ts.map +1 -1
- package/dist/types/src/operations/create.d.ts +3 -3
- package/dist/types/src/operations/create.d.ts.map +1 -1
- package/dist/types/src/operations/index.d.ts +1 -2
- package/dist/types/src/operations/index.d.ts.map +1 -1
- package/dist/types/src/operations/open.d.ts +3 -3
- package/dist/types/src/operations/open.d.ts.map +1 -1
- package/dist/types/src/operations/scroll-to-anchor.d.ts +3 -3
- package/dist/types/src/operations/scroll-to-anchor.d.ts.map +1 -1
- package/dist/types/src/operations/set-view-mode.d.ts +3 -3
- package/dist/types/src/operations/set-view-mode.d.ts.map +1 -1
- package/dist/types/src/operations/update-markdown.d.ts +5 -0
- package/dist/types/src/operations/update-markdown.d.ts.map +1 -0
- package/dist/types/src/plugin.d.ts +4 -0
- package/dist/types/src/plugin.d.ts.map +1 -0
- package/dist/types/src/testing.d.ts +1 -0
- package/dist/types/src/testing.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +70 -73
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/Markdown.d.ts +9 -8
- package/dist/types/src/types/Markdown.d.ts.map +1 -1
- package/dist/types/src/types/MarkdownCapabilities.d.ts +32 -0
- package/dist/types/src/types/MarkdownCapabilities.d.ts.map +1 -0
- package/dist/types/src/types/MarkdownEvents.d.ts +3 -0
- package/dist/types/src/types/MarkdownEvents.d.ts.map +1 -0
- package/dist/types/src/{operations/definitions.d.ts → types/MarkdownOperation.d.ts} +3 -3
- package/dist/types/src/types/MarkdownOperation.d.ts.map +1 -0
- package/dist/types/src/types/Settings.d.ts +10 -9
- package/dist/types/src/types/Settings.d.ts.map +1 -1
- package/dist/types/src/types/index.d.ts +3 -2
- package/dist/types/src/types/index.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +1 -0
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/src/util.d.ts +1 -1
- package/dist/types/src/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +119 -104
- package/src/MarkdownPlugin.node.ts +20 -0
- package/src/MarkdownPlugin.test.ts +26 -0
- package/src/MarkdownPlugin.tsx +9 -53
- package/src/blueprints/markdown-blueprint.ts +8 -9
- package/src/capabilities/app-graph-serializer.ts +4 -6
- package/src/capabilities/artifact-definition.ts +3 -4
- package/src/capabilities/blueprint-definition.ts +2 -0
- package/src/capabilities/comment-config.ts +32 -0
- package/src/capabilities/create-object.ts +30 -0
- package/src/capabilities/index.ts +4 -1
- package/src/capabilities/node.ts +3 -1
- package/src/capabilities/operation-handler.ts +1 -1
- package/src/capabilities/react-surface.tsx +18 -11
- package/src/capabilities/state.ts +4 -4
- package/src/components/MarkdownEditor/MarkdownEditor.stories.tsx +22 -17
- package/src/components/MarkdownEditor/MarkdownEditor.tsx +99 -86
- package/src/components/MarkdownEditor/MarkdownEditorContent.tsx +5 -5
- package/src/components/MarkdownEditor/MarkdownEditorToolbar.tsx +5 -16
- package/src/components/MarkdownSettings/MarkdownSettings.stories.tsx +2 -1
- package/src/components/MarkdownSettings/MarkdownSettings.tsx +16 -119
- package/src/containers/EditableMarkdownCard/EditableMarkdownCard.tsx +42 -0
- package/src/containers/EditableMarkdownCard/index.ts +6 -0
- package/src/containers/{MarkdownContainer/MarkdownContainer.stories.tsx → MarkdownArticle/MarkdownArticle.stories.tsx} +9 -8
- package/src/containers/{MarkdownContainer/MarkdownContainer.tsx → MarkdownArticle/MarkdownArticle.tsx} +32 -21
- package/src/containers/MarkdownArticle/index.ts +6 -0
- package/src/containers/MarkdownCard/MarkdownCard.stories.tsx +5 -4
- package/src/containers/MarkdownCard/MarkdownCard.tsx +21 -11
- package/src/containers/MarkdownCard/snippet.ts +27 -51
- package/src/containers/index.ts +3 -2
- package/src/hooks/useExtensions.tsx +7 -8
- package/src/hooks/useLinkQuery.ts +9 -26
- package/src/index.ts +2 -6
- package/src/meta.ts +4 -1
- package/src/operations/create-markdown.ts +3 -4
- package/src/operations/create.conversations.json +1 -1
- package/src/operations/create.test.ts +7 -9
- package/src/operations/create.ts +3 -4
- package/src/operations/index.ts +2 -4
- package/src/operations/open.ts +3 -3
- package/src/operations/scroll-to-anchor.ts +3 -4
- package/src/operations/set-view-mode.ts +3 -4
- package/src/operations/{update.ts → update-markdown.ts} +3 -3
- package/src/operations/update.conversations.json +1 -1
- package/src/operations/update.test.ts +7 -9
- package/src/plugin.ts +11 -0
- package/src/testing.ts +5 -3
- package/src/translations.ts +2 -26
- package/src/types/Markdown.ts +5 -0
- package/src/types/MarkdownCapabilities.ts +51 -0
- package/src/types/MarkdownEvents.ts +14 -0
- package/src/{operations/definitions.ts → types/MarkdownOperation.ts} +4 -2
- package/src/types/Settings.ts +47 -10
- package/src/types/index.ts +3 -2
- package/src/types/types.ts +4 -1
- package/src/util.tsx +3 -3
- package/dist/lib/browser/MarkdownSettings-YZFNSJJY.mjs +0 -121
- package/dist/lib/browser/MarkdownSettings-YZFNSJJY.mjs.map +0 -7
- package/dist/lib/browser/blueprints/index.mjs.map +0 -7
- package/dist/lib/browser/chunk-46WIDM4R.mjs +0 -98
- package/dist/lib/browser/chunk-46WIDM4R.mjs.map +0 -7
- package/dist/lib/browser/chunk-XKUKZNUS.mjs +0 -158
- package/dist/lib/browser/chunk-XKUKZNUS.mjs.map +0 -7
- package/dist/lib/browser/cli/index.mjs +0 -39
- package/dist/lib/browser/cli/index.mjs.map +0 -7
- package/dist/lib/browser/create-HSXPXCC5.mjs.map +0 -7
- package/dist/lib/browser/create-markdown-WB7DH3UF.mjs.map +0 -7
- package/dist/lib/browser/index.mjs +0 -653
- package/dist/lib/browser/index.mjs.map +0 -7
- package/dist/lib/browser/meta.json +0 -1
- package/dist/lib/browser/open-N6PAX6DY.mjs.map +0 -7
- package/dist/lib/browser/operations/index.mjs +0 -14
- package/dist/lib/browser/operations/index.mjs.map +0 -7
- package/dist/lib/browser/scroll-to-anchor-5M4F24AB.mjs.map +0 -7
- package/dist/lib/browser/set-view-mode-NBNF2I5W.mjs +0 -26
- package/dist/lib/browser/set-view-mode-NBNF2I5W.mjs.map +0 -7
- package/dist/lib/browser/types/index.mjs +0 -16
- package/dist/lib/browser/update-5QIRVGTL.mjs.map +0 -7
- package/dist/lib/node-esm/MarkdownSettings-X6SDS35F.mjs +0 -122
- package/dist/lib/node-esm/MarkdownSettings-X6SDS35F.mjs.map +0 -7
- package/dist/lib/node-esm/blueprints/index.mjs +0 -52
- package/dist/lib/node-esm/blueprints/index.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-4MSJO6IJ.mjs +0 -99
- package/dist/lib/node-esm/chunk-4MSJO6IJ.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-E4BQCEXF.mjs +0 -159
- package/dist/lib/node-esm/chunk-E4BQCEXF.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +0 -11
- package/dist/lib/node-esm/cli/index.mjs +0 -40
- package/dist/lib/node-esm/cli/index.mjs.map +0 -7
- package/dist/lib/node-esm/create-6Z2KYISY.mjs +0 -31
- package/dist/lib/node-esm/create-6Z2KYISY.mjs.map +0 -7
- package/dist/lib/node-esm/create-markdown-JWQZICKY.mjs +0 -23
- package/dist/lib/node-esm/create-markdown-JWQZICKY.mjs.map +0 -7
- package/dist/lib/node-esm/index.mjs +0 -654
- package/dist/lib/node-esm/index.mjs.map +0 -7
- package/dist/lib/node-esm/meta.json +0 -1
- package/dist/lib/node-esm/open-DSNFRSNZ.mjs +0 -22
- package/dist/lib/node-esm/open-DSNFRSNZ.mjs.map +0 -7
- package/dist/lib/node-esm/operations/index.mjs +0 -15
- package/dist/lib/node-esm/operations/index.mjs.map +0 -7
- package/dist/lib/node-esm/scroll-to-anchor-D6SHGU2R.mjs +0 -50
- package/dist/lib/node-esm/scroll-to-anchor-D6SHGU2R.mjs.map +0 -7
- package/dist/lib/node-esm/set-view-mode-REYB4L7J.mjs +0 -27
- package/dist/lib/node-esm/set-view-mode-REYB4L7J.mjs.map +0 -7
- package/dist/lib/node-esm/types/index.mjs +0 -17
- package/dist/lib/node-esm/update-YMQAIKOF.mjs +0 -46
- package/dist/lib/node-esm/update-YMQAIKOF.mjs.map +0 -7
- package/dist/types/src/cli/index.d.ts +0 -2
- package/dist/types/src/cli/index.d.ts.map +0 -1
- package/dist/types/src/cli/plugin.d.ts.map +0 -1
- package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.d.ts.map +0 -1
- package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.stories.d.ts +0 -99
- package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.stories.d.ts.map +0 -1
- package/dist/types/src/containers/MarkdownContainer/index.d.ts +0 -3
- package/dist/types/src/containers/MarkdownContainer/index.d.ts.map +0 -1
- package/dist/types/src/operations/definitions.d.ts.map +0 -1
- package/dist/types/src/operations/update.d.ts +0 -5
- package/dist/types/src/operations/update.d.ts.map +0 -1
- package/dist/types/src/types/capabilities.d.ts +0 -51
- package/dist/types/src/types/capabilities.d.ts.map +0 -1
- package/dist/types/src/types/events.d.ts +0 -5
- package/dist/types/src/types/events.d.ts.map +0 -1
- package/src/cli/index.ts +0 -5
- package/src/cli/plugin.ts +0 -39
- package/src/containers/MarkdownContainer/index.ts +0 -6
- package/src/types/capabilities.ts +0 -50
- package/src/types/events.ts +0 -14
- /package/dist/lib/{browser/chunk-J5LGTIGS.mjs.map → neutral/MarkdownPlugin.mjs.map} +0 -0
- /package/dist/lib/{browser/types → neutral/blueprints}/index.mjs.map +0 -0
- /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs +0 -0
- /package/dist/lib/{node-esm/chunk-HSLMI22Q.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
- /package/dist/lib/{node-esm/types → neutral}/index.mjs.map +0 -0
|
@@ -6,24 +6,22 @@ import { describe, expect, it } from '@effect/vitest';
|
|
|
6
6
|
import * as Effect from 'effect/Effect';
|
|
7
7
|
|
|
8
8
|
import { MemoizedAiService } from '@dxos/ai/testing';
|
|
9
|
-
import { AgentService } from '@dxos/assistant';
|
|
10
|
-
import { AssistantTestLayer } from '@dxos/assistant/testing';
|
|
11
|
-
import { Blueprint } from '@dxos/blueprints';
|
|
12
9
|
import { SpaceProperties } from '@dxos/client-protocol';
|
|
13
|
-
import {
|
|
14
|
-
import { Collection } from '@dxos/echo';
|
|
10
|
+
import { Blueprint, Operation } from '@dxos/compute';
|
|
11
|
+
import { Collection, Database, Feed, Obj, Query, Ref } from '@dxos/echo';
|
|
15
12
|
import { TestHelpers } from '@dxos/effect/testing';
|
|
16
|
-
import {
|
|
13
|
+
import { AgentService } from '@dxos/functions-runtime';
|
|
14
|
+
import { AssistantTestLayer } from '@dxos/functions-runtime/testing';
|
|
17
15
|
import { invariant } from '@dxos/invariant';
|
|
18
16
|
import { ObjectId } from '@dxos/keys';
|
|
19
|
-
import { Markdown } from '@dxos/plugin-markdown
|
|
17
|
+
import { Markdown } from '@dxos/plugin-markdown';
|
|
20
18
|
import { HasSubject } from '@dxos/types';
|
|
21
19
|
import { trim } from '@dxos/util';
|
|
22
20
|
|
|
23
21
|
import { WithProperties } from '#testing';
|
|
24
22
|
|
|
25
23
|
import MarkdownBlueprint from '../blueprints/markdown-blueprint';
|
|
26
|
-
import {
|
|
24
|
+
import { MarkdownOperation } from '../types';
|
|
27
25
|
import { MarkdownOperationHandlerSet } from './index';
|
|
28
26
|
|
|
29
27
|
ObjectId.dangerouslyDisableRandomness();
|
|
@@ -54,7 +52,7 @@ describe('update', () => {
|
|
|
54
52
|
});
|
|
55
53
|
yield* Database.add(doc);
|
|
56
54
|
|
|
57
|
-
yield*
|
|
55
|
+
yield* Operation.invoke(MarkdownOperation.Update, {
|
|
58
56
|
doc: Ref.make(doc),
|
|
59
57
|
edits: [{ oldString: 'Founders', newString: '# Founders' }],
|
|
60
58
|
});
|
package/src/plugin.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2023 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { Plugin } from '@dxos/app-framework';
|
|
6
|
+
|
|
7
|
+
import { meta } from './meta';
|
|
8
|
+
|
|
9
|
+
export const MarkdownPlugin = Plugin.lazy(meta, () => import('#plugin'));
|
|
10
|
+
|
|
11
|
+
export { MarkdownOperationHandlerSet } from './operations';
|
package/src/testing.ts
CHANGED
|
@@ -6,9 +6,11 @@ import * as Toolkit from '@effect/ai/Toolkit';
|
|
|
6
6
|
import * as Effect from 'effect/Effect';
|
|
7
7
|
|
|
8
8
|
import { SpaceProperties } from '@dxos/client-protocol';
|
|
9
|
-
import { Obj, Ref } from '@dxos/echo';
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
import { Collection, Database, Obj, Ref } from '@dxos/echo';
|
|
10
|
+
|
|
11
|
+
// Eager re-export of `MarkdownPlugin`. See `@dxos/plugin-testing/src/core.ts`
|
|
12
|
+
// for the rationale.
|
|
13
|
+
export * from './MarkdownPlugin';
|
|
12
14
|
|
|
13
15
|
// TODO(wittjosiah): Factor out.
|
|
14
16
|
export const WithProperties = <A, E, R>(effect: Effect.Effect<A, E, R>): Effect.Effect<A, E, R | Database.Service> =>
|
package/src/translations.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
//
|
|
4
4
|
|
|
5
5
|
import { type Resource } from '@dxos/react-ui';
|
|
6
|
-
import { translations as editorTranslations } from '@dxos/react-ui-editor';
|
|
6
|
+
import { translations as editorTranslations } from '@dxos/react-ui-editor/translations';
|
|
7
7
|
|
|
8
8
|
import { meta } from '#meta';
|
|
9
9
|
import { Markdown } from '#types';
|
|
@@ -24,38 +24,14 @@ export const translations = [
|
|
|
24
24
|
},
|
|
25
25
|
[meta.id]: {
|
|
26
26
|
'plugin.name': 'Editor',
|
|
27
|
-
'settings.title': 'Editor settings',
|
|
28
27
|
'choose-markdown-from-space-dialog.title': 'Choose one or more documents to add',
|
|
29
|
-
// TODO(burdon): Style-guide for user-facing text (e.g., hints, questions, capitalization, etc.)
|
|
30
28
|
'empty-choose-markdown-from-space.message': 'None available; try creating a new one instead?',
|
|
31
29
|
'chooser-done.label': 'Add selected',
|
|
32
|
-
'editor.placeholder': '
|
|
33
|
-
'editor-input-mode.label': 'Editor input mode',
|
|
34
|
-
'editor-input-mode.description': 'Choose keyboard bindings for the editor.',
|
|
35
|
-
'select-editor-input-mode.placeholder': 'Select editor input mode…',
|
|
36
|
-
'settings.editor-input-mode.default.label': 'Default',
|
|
37
|
-
'settings.editor-input-mode.vim.label': 'Vim',
|
|
38
|
-
'settings.editor-input-mode.vscode.label': 'VS Code',
|
|
39
|
-
'settings.toolbar.label': 'Show toolbar',
|
|
40
|
-
'settings.toolbar.description': 'Display a formatting toolbar above the editor.',
|
|
41
|
-
'settings.numbered-headings.label': 'Numbered headings',
|
|
42
|
-
'settings.numbered-headings.description': 'Automatically number heading levels in the document.',
|
|
43
|
-
'settings.folding.label': 'Folding',
|
|
44
|
-
'settings.folding.description': 'Allow collapsing and expanding sections by heading.',
|
|
45
|
-
'settings.experimental.label': 'Enable experimental features',
|
|
46
|
-
'settings.experimental.description': 'Turn on features that are still in development.',
|
|
47
|
-
'settings.debug.label': 'Enable debugging features',
|
|
48
|
-
'settings.debug.description': 'Show developer tools and diagnostics for the editor.',
|
|
49
|
-
'settings.debug-typewriter.label': 'Typewriter script',
|
|
50
|
-
'settings.debug-typewriter.description': 'Script to replay typed input for testing purposes.',
|
|
51
|
-
'settings.debug-typewriter.placeholder': 'Typewriter script...',
|
|
30
|
+
'editor.placeholder': 'Enter text…',
|
|
52
31
|
'toggle-view-mode.label': 'Toggle read-only',
|
|
53
|
-
'default-view-mode.label': 'Default view mode',
|
|
54
|
-
'default-view-mode.description': 'Set whether documents open in editing or read-only mode.',
|
|
55
32
|
'upload-image.label': 'Upload image',
|
|
56
33
|
'fallback.title': 'Untitled',
|
|
57
34
|
'navigate-to-document.label': 'Open document',
|
|
58
|
-
|
|
59
35
|
'words.label': 'words',
|
|
60
36
|
'words.label_zero': 'words',
|
|
61
37
|
'words.label_one': 'word',
|
package/src/types/Markdown.ts
CHANGED
|
@@ -4,10 +4,13 @@
|
|
|
4
4
|
|
|
5
5
|
import * as Schema from 'effect/Schema';
|
|
6
6
|
|
|
7
|
+
import { BlueprintsAnnotation, GraphPropsAnnotation } from '@dxos/app-toolkit';
|
|
7
8
|
import { Annotation, Obj, Ref, Type } from '@dxos/echo';
|
|
8
9
|
import { DescriptionAnnotation, FormInputAnnotation, LabelAnnotation } from '@dxos/echo/internal';
|
|
9
10
|
import { Text } from '@dxos/schema';
|
|
10
11
|
|
|
12
|
+
export const BLUEPRINT_KEY = 'org.dxos.blueprint.markdown';
|
|
13
|
+
|
|
11
14
|
// Re-export Settings as merged const/type (not as namespace).
|
|
12
15
|
import * as SettingsModule from './Settings';
|
|
13
16
|
export const Settings = SettingsModule.Settings;
|
|
@@ -32,6 +35,8 @@ export const Document = Schema.Struct({
|
|
|
32
35
|
icon: 'ph--text-aa--regular',
|
|
33
36
|
hue: 'indigo',
|
|
34
37
|
}),
|
|
38
|
+
BlueprintsAnnotation.set([BLUEPRINT_KEY]),
|
|
39
|
+
GraphPropsAnnotation.set({ managesAutofocus: true }),
|
|
35
40
|
);
|
|
36
41
|
|
|
37
42
|
export type Document = Schema.Schema.Type<typeof Document>;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
// @import-as-namespace
|
|
6
|
+
|
|
7
|
+
import { type EditorView } from '@codemirror/view';
|
|
8
|
+
import { type Atom } from '@effect-atom/atom-react';
|
|
9
|
+
import * as Schema from 'effect/Schema';
|
|
10
|
+
|
|
11
|
+
import { Capability } from '@dxos/app-framework';
|
|
12
|
+
import { type EditorStateStore } from '@dxos/ui-editor';
|
|
13
|
+
import { type EditorViewMode } from '@dxos/ui-editor/types';
|
|
14
|
+
|
|
15
|
+
import { meta } from '#meta';
|
|
16
|
+
|
|
17
|
+
import type * as Markdown from './Markdown';
|
|
18
|
+
import { type MarkdownExtensionProvider } from './types';
|
|
19
|
+
|
|
20
|
+
/** Schema for persisted markdown state. */
|
|
21
|
+
export const StateSchema = Schema.mutable(
|
|
22
|
+
Schema.Struct({
|
|
23
|
+
viewMode: Schema.Record({ key: Schema.String, value: Schema.String }),
|
|
24
|
+
}),
|
|
25
|
+
);
|
|
26
|
+
|
|
27
|
+
export type MarkdownState = {
|
|
28
|
+
viewMode: Record<string, EditorViewMode>;
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
export type EditorViewEntry = { view: EditorView; documentId: string };
|
|
32
|
+
|
|
33
|
+
export type EditorViewRegistry = {
|
|
34
|
+
register: (attendableId: string, view: EditorView, documentId: string) => void;
|
|
35
|
+
unregister: (attendableId: string) => void;
|
|
36
|
+
get: (attendableId: string) => EditorViewEntry | undefined;
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
export const Settings = Capability.make<Atom.Writable<Markdown.Settings>>(`${meta.id}.capability.settings`);
|
|
40
|
+
|
|
41
|
+
/** Persisted state atom for view mode per document. */
|
|
42
|
+
export const State = Capability.make<Atom.Writable<MarkdownState>>(`${meta.id}.capability.state`);
|
|
43
|
+
|
|
44
|
+
/** Editor state store for cursor positions, scroll state, etc. */
|
|
45
|
+
export const EditorState = Capability.make<EditorStateStore>(`${meta.id}.capability.editor-state`);
|
|
46
|
+
|
|
47
|
+
/** Registry of active EditorView instances keyed by attendable ID. */
|
|
48
|
+
export const EditorViews = Capability.make<EditorViewRegistry>(`${meta.id}.capability.editor-views`);
|
|
49
|
+
|
|
50
|
+
// TODO(burdon): Move to ./types (external API)?
|
|
51
|
+
export const Extensions = Capability.make<MarkdownExtensionProvider[]>(`${meta.id}.capability.extensions`);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
// @import-as-namespace
|
|
6
|
+
|
|
7
|
+
import { type ActivationEvent } from '@dxos/app-framework';
|
|
8
|
+
import { AppActivationEvents } from '@dxos/app-toolkit';
|
|
9
|
+
|
|
10
|
+
import { meta } from '#meta';
|
|
11
|
+
|
|
12
|
+
export const SetupExtensions: ActivationEvent.ActivationEvent = AppActivationEvents.createStateEvent(
|
|
13
|
+
`${meta.id}.event.setup-extensions`,
|
|
14
|
+
);
|
|
@@ -2,17 +2,19 @@
|
|
|
2
2
|
// Copyright 2025 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
+
// @import-as-namespace
|
|
6
|
+
|
|
5
7
|
import * as Schema from 'effect/Schema';
|
|
6
8
|
|
|
7
9
|
import { Capability } from '@dxos/app-framework';
|
|
10
|
+
import { Operation } from '@dxos/compute';
|
|
8
11
|
import { Database, Ref } from '@dxos/echo';
|
|
9
|
-
import { Operation } from '@dxos/operation';
|
|
10
12
|
import { EditorViewMode } from '@dxos/ui-editor/types';
|
|
11
13
|
import { trim } from '@dxos/util';
|
|
12
14
|
|
|
13
15
|
import { meta } from '#meta';
|
|
14
16
|
|
|
15
|
-
import
|
|
17
|
+
import * as Markdown from './Markdown';
|
|
16
18
|
|
|
17
19
|
const MARKDOWN_OPERATION = `${meta.id}.operation`;
|
|
18
20
|
|
package/src/types/Settings.ts
CHANGED
|
@@ -13,16 +13,53 @@ import { EditorInputMode, EditorViewMode } from '@dxos/ui-editor/types';
|
|
|
13
13
|
*/
|
|
14
14
|
export const Settings = Schema.mutable(
|
|
15
15
|
Schema.Struct({
|
|
16
|
-
defaultViewMode: EditorViewMode
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
16
|
+
defaultViewMode: EditorViewMode.annotations({
|
|
17
|
+
title: 'Default view mode',
|
|
18
|
+
description: 'Set whether documents open in editing or read-only mode.',
|
|
19
|
+
}),
|
|
20
|
+
editorInputMode: Schema.optional(
|
|
21
|
+
EditorInputMode.annotations({
|
|
22
|
+
title: 'Editor input mode',
|
|
23
|
+
description: 'Choose keyboard bindings for the editor.',
|
|
24
|
+
}),
|
|
25
|
+
),
|
|
26
|
+
toolbar: Schema.optional(
|
|
27
|
+
Schema.Boolean.annotations({
|
|
28
|
+
title: 'Show toolbar',
|
|
29
|
+
description: 'Display a formatting toolbar above the editor.',
|
|
30
|
+
}),
|
|
31
|
+
),
|
|
32
|
+
numberedHeadings: Schema.optional(
|
|
33
|
+
Schema.Boolean.annotations({
|
|
34
|
+
title: 'Numbered headings',
|
|
35
|
+
description: 'Automatically number heading levels in the document.',
|
|
36
|
+
}),
|
|
37
|
+
),
|
|
38
|
+
folding: Schema.optional(
|
|
39
|
+
Schema.Boolean.annotations({
|
|
40
|
+
title: 'Folding',
|
|
41
|
+
description: 'Allow collapsing and expanding sections by heading.',
|
|
42
|
+
}),
|
|
43
|
+
),
|
|
44
|
+
experimental: Schema.optional(
|
|
45
|
+
Schema.Boolean.annotations({
|
|
46
|
+
title: 'Enable experimental features',
|
|
47
|
+
description: 'Turn on features that are still in development.',
|
|
48
|
+
}),
|
|
49
|
+
),
|
|
50
|
+
debug: Schema.optional(
|
|
51
|
+
Schema.Boolean.annotations({
|
|
52
|
+
title: 'Enable debugging features',
|
|
53
|
+
description: 'Show developer tools and diagnostics for the editor.',
|
|
54
|
+
}),
|
|
55
|
+
),
|
|
56
|
+
snippets: Schema.optional(
|
|
57
|
+
Schema.String.annotations({
|
|
58
|
+
title: 'Snippets',
|
|
59
|
+
description: 'Input snippets to replay for testing purposes.',
|
|
60
|
+
}),
|
|
61
|
+
),
|
|
25
62
|
}),
|
|
26
63
|
);
|
|
27
64
|
|
|
28
|
-
export
|
|
65
|
+
export interface Settings extends Schema.Schema.Type<typeof Settings> {}
|
package/src/types/index.ts
CHANGED
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
// Copyright 2024 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
export * from './capabilities';
|
|
6
|
-
export * from './events';
|
|
7
5
|
export * from './types';
|
|
8
6
|
|
|
9
7
|
export * as Markdown from './Markdown';
|
|
8
|
+
export * as MarkdownCapabilities from './MarkdownCapabilities';
|
|
9
|
+
export * as MarkdownEvents from './MarkdownEvents';
|
|
10
|
+
export * as MarkdownOperation from './MarkdownOperation';
|
|
10
11
|
export * as Settings from './Settings';
|
package/src/types/types.ts
CHANGED
|
@@ -12,7 +12,10 @@ import { type Document } from './Markdown';
|
|
|
12
12
|
// TODO(wittjosiah): MarkdownExtensionProvider is a part of the MarkdownCapabilities api which should be in ./types.
|
|
13
13
|
|
|
14
14
|
// TODO(burdon): Async?
|
|
15
|
-
export type MarkdownExtensionProvider = (props: {
|
|
15
|
+
export type MarkdownExtensionProvider = (props: {
|
|
16
|
+
document?: Document;
|
|
17
|
+
viewMode?: EditorViewMode;
|
|
18
|
+
}) => Extension | undefined;
|
|
16
19
|
|
|
17
20
|
export type MarkdownPluginState = {
|
|
18
21
|
// Codemirror extensions provided by other plugins.
|
package/src/util.tsx
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
import { debounce } from '@dxos/async';
|
|
6
6
|
import { Obj } from '@dxos/echo';
|
|
7
|
-
import { type TypedObjectSerializer } from '@dxos/plugin-space
|
|
7
|
+
import { type TypedObjectSerializer } from '@dxos/plugin-space';
|
|
8
8
|
|
|
9
9
|
import { Markdown } from '#types';
|
|
10
10
|
|
|
@@ -116,8 +116,8 @@ export const getContentSnippet = (content = '', maxLines = 3) => {
|
|
|
116
116
|
export const setFallbackName = debounce((doc: Markdown.Document, content = '') => {
|
|
117
117
|
const name = getFallbackName(content);
|
|
118
118
|
if (doc.fallbackName !== name) {
|
|
119
|
-
Obj.
|
|
120
|
-
|
|
119
|
+
Obj.update(doc, (doc) => {
|
|
120
|
+
doc.fallbackName = name;
|
|
121
121
|
});
|
|
122
122
|
}
|
|
123
123
|
}, 200);
|
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
import "./chunk-J5LGTIGS.mjs";
|
|
2
|
-
|
|
3
|
-
// src/components/MarkdownSettings/MarkdownSettings.tsx
|
|
4
|
-
import React from "react";
|
|
5
|
-
import { Input, Select, useTranslation } from "@dxos/react-ui";
|
|
6
|
-
import { Settings as SettingsForm } from "@dxos/react-ui-form";
|
|
7
|
-
import { EditorInputModes, EditorViewModes } from "@dxos/ui-editor";
|
|
8
|
-
import { meta } from "#meta";
|
|
9
|
-
var MarkdownSettings = ({ settings, onSettingsChange }) => {
|
|
10
|
-
const { t } = useTranslation(meta.id);
|
|
11
|
-
return /* @__PURE__ */ React.createElement(SettingsForm.Viewport, null, /* @__PURE__ */ React.createElement(SettingsForm.Section, {
|
|
12
|
-
title: t("settings.title", {
|
|
13
|
-
ns: meta.id
|
|
14
|
-
})
|
|
15
|
-
}, /* @__PURE__ */ React.createElement(SettingsForm.Item, {
|
|
16
|
-
title: t("default-view-mode.label"),
|
|
17
|
-
description: t("default-view-mode.description")
|
|
18
|
-
}, /* @__PURE__ */ React.createElement(Select.Root, {
|
|
19
|
-
disabled: !onSettingsChange,
|
|
20
|
-
value: settings.defaultViewMode,
|
|
21
|
-
onValueChange: (value) => {
|
|
22
|
-
onSettingsChange?.((s) => ({
|
|
23
|
-
...s,
|
|
24
|
-
defaultViewMode: value
|
|
25
|
-
}));
|
|
26
|
-
}
|
|
27
|
-
}, /* @__PURE__ */ React.createElement(Select.TriggerButton, {
|
|
28
|
-
disabled: !onSettingsChange
|
|
29
|
-
}), /* @__PURE__ */ React.createElement(Select.Portal, null, /* @__PURE__ */ React.createElement(Select.Content, null, /* @__PURE__ */ React.createElement(Select.Viewport, null, EditorViewModes.map((mode) => /* @__PURE__ */ React.createElement(Select.Option, {
|
|
30
|
-
key: mode,
|
|
31
|
-
value: mode
|
|
32
|
-
}, t(`view-mode.${mode}.label`, {
|
|
33
|
-
ns: "@dxos/react-ui-editor"
|
|
34
|
-
})))), /* @__PURE__ */ React.createElement(Select.Arrow, null))))), /* @__PURE__ */ React.createElement(SettingsForm.Item, {
|
|
35
|
-
title: t("editor-input-mode.label"),
|
|
36
|
-
description: t("editor-input-mode.description")
|
|
37
|
-
}, /* @__PURE__ */ React.createElement(Select.Root, {
|
|
38
|
-
disabled: !onSettingsChange,
|
|
39
|
-
value: settings.editorInputMode ?? "default",
|
|
40
|
-
onValueChange: (value) => {
|
|
41
|
-
onSettingsChange?.((s) => ({
|
|
42
|
-
...s,
|
|
43
|
-
editorInputMode: value
|
|
44
|
-
}));
|
|
45
|
-
}
|
|
46
|
-
}, /* @__PURE__ */ React.createElement(Select.TriggerButton, {
|
|
47
|
-
disabled: !onSettingsChange,
|
|
48
|
-
placeholder: t("select-editor-input-mode.placeholder")
|
|
49
|
-
}), /* @__PURE__ */ React.createElement(Select.Portal, null, /* @__PURE__ */ React.createElement(Select.Content, null, /* @__PURE__ */ React.createElement(Select.Viewport, null, EditorInputModes.map((mode) => /* @__PURE__ */ React.createElement(Select.Option, {
|
|
50
|
-
key: mode,
|
|
51
|
-
value: mode
|
|
52
|
-
}, t(`settings.editor-input-mode.${mode}.label`)))), /* @__PURE__ */ React.createElement(Select.Arrow, null))))), /* @__PURE__ */ React.createElement(SettingsForm.Item, {
|
|
53
|
-
title: t("settings.toolbar.label"),
|
|
54
|
-
description: t("settings.toolbar.description")
|
|
55
|
-
}, /* @__PURE__ */ React.createElement(Input.Switch, {
|
|
56
|
-
disabled: !onSettingsChange,
|
|
57
|
-
checked: settings.toolbar,
|
|
58
|
-
onCheckedChange: (checked) => onSettingsChange?.((s) => ({
|
|
59
|
-
...s,
|
|
60
|
-
toolbar: !!checked
|
|
61
|
-
}))
|
|
62
|
-
})), /* @__PURE__ */ React.createElement(SettingsForm.Item, {
|
|
63
|
-
title: t("settings.numbered-headings.label"),
|
|
64
|
-
description: t("settings.numbered-headings.description")
|
|
65
|
-
}, /* @__PURE__ */ React.createElement(Input.Switch, {
|
|
66
|
-
disabled: !onSettingsChange,
|
|
67
|
-
checked: settings.numberedHeadings,
|
|
68
|
-
onCheckedChange: (checked) => onSettingsChange?.((s) => ({
|
|
69
|
-
...s,
|
|
70
|
-
numberedHeadings: !!checked
|
|
71
|
-
}))
|
|
72
|
-
})), /* @__PURE__ */ React.createElement(SettingsForm.Item, {
|
|
73
|
-
title: t("settings.folding.label"),
|
|
74
|
-
description: t("settings.folding.description")
|
|
75
|
-
}, /* @__PURE__ */ React.createElement(Input.Switch, {
|
|
76
|
-
disabled: !onSettingsChange,
|
|
77
|
-
checked: settings.folding,
|
|
78
|
-
onCheckedChange: (checked) => onSettingsChange?.((s) => ({
|
|
79
|
-
...s,
|
|
80
|
-
folding: !!checked
|
|
81
|
-
}))
|
|
82
|
-
})), /* @__PURE__ */ React.createElement(SettingsForm.Item, {
|
|
83
|
-
title: t("settings.experimental.label"),
|
|
84
|
-
description: t("settings.experimental.description")
|
|
85
|
-
}, /* @__PURE__ */ React.createElement(Input.Switch, {
|
|
86
|
-
disabled: !onSettingsChange,
|
|
87
|
-
checked: settings.experimental,
|
|
88
|
-
onCheckedChange: (checked) => onSettingsChange?.((s) => ({
|
|
89
|
-
...s,
|
|
90
|
-
experimental: !!checked
|
|
91
|
-
}))
|
|
92
|
-
})), /* @__PURE__ */ React.createElement(SettingsForm.Item, {
|
|
93
|
-
title: t("settings.debug.label"),
|
|
94
|
-
description: t("settings.debug.description")
|
|
95
|
-
}, /* @__PURE__ */ React.createElement(Input.Switch, {
|
|
96
|
-
disabled: !onSettingsChange,
|
|
97
|
-
checked: settings.debug,
|
|
98
|
-
onCheckedChange: (checked) => onSettingsChange?.((s) => ({
|
|
99
|
-
...s,
|
|
100
|
-
debug: !!checked
|
|
101
|
-
}))
|
|
102
|
-
})), settings.debug && /* @__PURE__ */ React.createElement(SettingsForm.Item, {
|
|
103
|
-
title: t("settings.debug-typewriter.label", {
|
|
104
|
-
ns: meta.id
|
|
105
|
-
}),
|
|
106
|
-
description: t("settings.debug-typewriter.description")
|
|
107
|
-
}, /* @__PURE__ */ React.createElement(Input.TextArea, {
|
|
108
|
-
disabled: !onSettingsChange,
|
|
109
|
-
rows: 5,
|
|
110
|
-
value: settings.typewriter,
|
|
111
|
-
onChange: ({ target: { value } }) => onSettingsChange?.((s) => ({
|
|
112
|
-
...s,
|
|
113
|
-
typewriter: value
|
|
114
|
-
})),
|
|
115
|
-
placeholder: t("settings.debug-typewriter.placeholder")
|
|
116
|
-
}))));
|
|
117
|
-
};
|
|
118
|
-
export {
|
|
119
|
-
MarkdownSettings as default
|
|
120
|
-
};
|
|
121
|
-
//# sourceMappingURL=MarkdownSettings-YZFNSJJY.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/MarkdownSettings/MarkdownSettings.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type AppSurface } from '@dxos/app-toolkit/ui';\nimport { Input, Select, useTranslation } from '@dxos/react-ui';\nimport { Settings as SettingsForm } from '@dxos/react-ui-form';\nimport { type EditorInputMode, EditorInputModes, type EditorViewMode, EditorViewModes } from '@dxos/ui-editor';\n\nimport { meta } from '#meta';\nimport { type Markdown } from '#types';\n\nexport type MarkdownSettingsProps = AppSurface.SettingsArticleProps<Markdown.Settings>;\n\nexport const MarkdownSettings = ({ settings, onSettingsChange }: MarkdownSettingsProps) => {\n const { t } = useTranslation(meta.id);\n\n // TODO(wittjosiah): Add skill test confirmation for entering vim mode.\n return (\n <SettingsForm.Viewport>\n <SettingsForm.Section title={t('settings.title', { ns: meta.id })}>\n <SettingsForm.Item title={t('default-view-mode.label')} description={t('default-view-mode.description')}>\n <Select.Root\n disabled={!onSettingsChange}\n value={settings.defaultViewMode}\n onValueChange={(value) => {\n onSettingsChange?.((s) => ({ ...s, defaultViewMode: value as EditorViewMode }));\n }}\n >\n <Select.TriggerButton disabled={!onSettingsChange} />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n {EditorViewModes.map((mode) => (\n <Select.Option key={mode} value={mode}>\n {t(`view-mode.${mode}.label`, { ns: '@dxos/react-ui-editor' })}\n </Select.Option>\n ))}\n </Select.Viewport>\n <Select.Arrow />\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </SettingsForm.Item>\n\n <SettingsForm.Item title={t('editor-input-mode.label')} description={t('editor-input-mode.description')}>\n <Select.Root\n disabled={!onSettingsChange}\n value={settings.editorInputMode ?? 'default'}\n onValueChange={(value) => {\n onSettingsChange?.((s) => ({ ...s, editorInputMode: value as EditorInputMode }));\n }}\n >\n <Select.TriggerButton\n disabled={!onSettingsChange}\n placeholder={t('select-editor-input-mode.placeholder')}\n />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n {EditorInputModes.map((mode) => (\n <Select.Option key={mode} value={mode}>\n {t(`settings.editor-input-mode.${mode}.label`)}\n </Select.Option>\n ))}\n </Select.Viewport>\n <Select.Arrow />\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </SettingsForm.Item>\n\n <SettingsForm.Item title={t('settings.toolbar.label')} description={t('settings.toolbar.description')}>\n <Input.Switch\n disabled={!onSettingsChange}\n checked={settings.toolbar}\n onCheckedChange={(checked) => onSettingsChange?.((s) => ({ ...s, toolbar: !!checked }))}\n />\n </SettingsForm.Item>\n\n <SettingsForm.Item\n title={t('settings.numbered-headings.label')}\n description={t('settings.numbered-headings.description')}\n >\n <Input.Switch\n disabled={!onSettingsChange}\n checked={settings.numberedHeadings}\n onCheckedChange={(checked) => onSettingsChange?.((s) => ({ ...s, numberedHeadings: !!checked }))}\n />\n </SettingsForm.Item>\n\n <SettingsForm.Item title={t('settings.folding.label')} description={t('settings.folding.description')}>\n <Input.Switch\n disabled={!onSettingsChange}\n checked={settings.folding}\n onCheckedChange={(checked) => onSettingsChange?.((s) => ({ ...s, folding: !!checked }))}\n />\n </SettingsForm.Item>\n\n <SettingsForm.Item\n title={t('settings.experimental.label')}\n description={t('settings.experimental.description')}\n >\n <Input.Switch\n disabled={!onSettingsChange}\n checked={settings.experimental}\n onCheckedChange={(checked) => onSettingsChange?.((s) => ({ ...s, experimental: !!checked }))}\n />\n </SettingsForm.Item>\n\n <SettingsForm.Item title={t('settings.debug.label')} description={t('settings.debug.description')}>\n <Input.Switch\n disabled={!onSettingsChange}\n checked={settings.debug}\n onCheckedChange={(checked) => onSettingsChange?.((s) => ({ ...s, debug: !!checked }))}\n />\n </SettingsForm.Item>\n\n {settings.debug && (\n <SettingsForm.Item\n title={t('settings.debug-typewriter.label', { ns: meta.id })}\n description={t('settings.debug-typewriter.description')}\n >\n <Input.TextArea\n disabled={!onSettingsChange}\n rows={5}\n value={settings.typewriter}\n onChange={({ target: { value } }) => onSettingsChange?.((s) => ({ ...s, typewriter: value }))}\n placeholder={t('settings.debug-typewriter.placeholder')}\n />\n </SettingsForm.Item>\n )}\n </SettingsForm.Section>\n </SettingsForm.Viewport>\n );\n};\n"],
|
|
5
|
-
"mappings": ";;;AAIA,OAAOA,WAAW;AAGlB,SAASC,OAAOC,QAAQC,sBAAsB;AAC9C,SAASC,YAAYC,oBAAoB;AACzC,SAA+BC,kBAAuCC,uBAAuB;AAE7F,SAASC,YAAY;AAKd,IAAMC,mBAAmB,CAAC,EAAEC,UAAUC,iBAAgB,MAAyB;AACpF,QAAM,EAAEC,EAAC,IAAKC,eAAeC,KAAKC,EAAE;AAGpC,SACE,sBAAA,cAACC,aAAaC,UAAQ,MACpB,sBAAA,cAACD,aAAaE,SAAO;IAACC,OAAOP,EAAE,kBAAkB;MAAEQ,IAAIN,KAAKC;IAAG,CAAA;KAC7D,sBAAA,cAACC,aAAaK,MAAI;IAACF,OAAOP,EAAE,yBAAA;IAA4BU,aAAaV,EAAE,+BAAA;KACrE,sBAAA,cAACW,OAAOC,MAAI;IACVC,UAAU,CAACd;IACXe,OAAOhB,SAASiB;IAChBC,eAAe,CAACF,UAAAA;AACdf,yBAAmB,CAACkB,OAAO;QAAE,GAAGA;QAAGF,iBAAiBD;MAAwB,EAAA;IAC9E;KAEA,sBAAA,cAACH,OAAOO,eAAa;IAACL,UAAU,CAACd;MACjC,sBAAA,cAACY,OAAOQ,QAAM,MACZ,sBAAA,cAACR,OAAOS,SAAO,MACb,sBAAA,cAACT,OAAON,UAAQ,MACbgB,gBAAgBC,IAAI,CAACC,SACpB,sBAAA,cAACZ,OAAOa,QAAM;IAACC,KAAKF;IAAMT,OAAOS;KAC9BvB,EAAE,aAAauB,IAAAA,UAAc;IAAEf,IAAI;EAAwB,CAAA,CAAA,CAAA,CAAA,GAIlE,sBAAA,cAACG,OAAOe,OAAK,IAAA,CAAA,CAAA,CAAA,CAAA,GAMrB,sBAAA,cAACtB,aAAaK,MAAI;IAACF,OAAOP,EAAE,yBAAA;IAA4BU,aAAaV,EAAE,+BAAA;KACrE,sBAAA,cAACW,OAAOC,MAAI;IACVC,UAAU,CAACd;IACXe,OAAOhB,SAAS6B,mBAAmB;IACnCX,eAAe,CAACF,UAAAA;AACdf,yBAAmB,CAACkB,OAAO;QAAE,GAAGA;QAAGU,iBAAiBb;MAAyB,EAAA;IAC/E;KAEA,sBAAA,cAACH,OAAOO,eAAa;IACnBL,UAAU,CAACd;IACX6B,aAAa5B,EAAE,sCAAA;MAEjB,sBAAA,cAACW,OAAOQ,QAAM,MACZ,sBAAA,cAACR,OAAOS,SAAO,MACb,sBAAA,cAACT,OAAON,UAAQ,MACbwB,iBAAiBP,IAAI,CAACC,SACrB,sBAAA,cAACZ,OAAOa,QAAM;IAACC,KAAKF;IAAMT,OAAOS;KAC9BvB,EAAE,8BAA8BuB,IAAAA,QAAY,CAAA,CAAA,CAAA,GAInD,sBAAA,cAACZ,OAAOe,OAAK,IAAA,CAAA,CAAA,CAAA,CAAA,GAMrB,sBAAA,cAACtB,aAAaK,MAAI;IAACF,OAAOP,EAAE,wBAAA;IAA2BU,aAAaV,EAAE,8BAAA;KACpE,sBAAA,cAAC8B,MAAMC,QAAM;IACXlB,UAAU,CAACd;IACXiC,SAASlC,SAASmC;IAClBC,iBAAiB,CAACF,YAAYjC,mBAAmB,CAACkB,OAAO;MAAE,GAAGA;MAAGgB,SAAS,CAAC,CAACD;IAAQ,EAAA;OAIxF,sBAAA,cAAC5B,aAAaK,MAAI;IAChBF,OAAOP,EAAE,kCAAA;IACTU,aAAaV,EAAE,wCAAA;KAEf,sBAAA,cAAC8B,MAAMC,QAAM;IACXlB,UAAU,CAACd;IACXiC,SAASlC,SAASqC;IAClBD,iBAAiB,CAACF,YAAYjC,mBAAmB,CAACkB,OAAO;MAAE,GAAGA;MAAGkB,kBAAkB,CAAC,CAACH;IAAQ,EAAA;OAIjG,sBAAA,cAAC5B,aAAaK,MAAI;IAACF,OAAOP,EAAE,wBAAA;IAA2BU,aAAaV,EAAE,8BAAA;KACpE,sBAAA,cAAC8B,MAAMC,QAAM;IACXlB,UAAU,CAACd;IACXiC,SAASlC,SAASsC;IAClBF,iBAAiB,CAACF,YAAYjC,mBAAmB,CAACkB,OAAO;MAAE,GAAGA;MAAGmB,SAAS,CAAC,CAACJ;IAAQ,EAAA;OAIxF,sBAAA,cAAC5B,aAAaK,MAAI;IAChBF,OAAOP,EAAE,6BAAA;IACTU,aAAaV,EAAE,mCAAA;KAEf,sBAAA,cAAC8B,MAAMC,QAAM;IACXlB,UAAU,CAACd;IACXiC,SAASlC,SAASuC;IAClBH,iBAAiB,CAACF,YAAYjC,mBAAmB,CAACkB,OAAO;MAAE,GAAGA;MAAGoB,cAAc,CAAC,CAACL;IAAQ,EAAA;OAI7F,sBAAA,cAAC5B,aAAaK,MAAI;IAACF,OAAOP,EAAE,sBAAA;IAAyBU,aAAaV,EAAE,4BAAA;KAClE,sBAAA,cAAC8B,MAAMC,QAAM;IACXlB,UAAU,CAACd;IACXiC,SAASlC,SAASwC;IAClBJ,iBAAiB,CAACF,YAAYjC,mBAAmB,CAACkB,OAAO;MAAE,GAAGA;MAAGqB,OAAO,CAAC,CAACN;IAAQ,EAAA;OAIrFlC,SAASwC,SACR,sBAAA,cAAClC,aAAaK,MAAI;IAChBF,OAAOP,EAAE,mCAAmC;MAAEQ,IAAIN,KAAKC;IAAG,CAAA;IAC1DO,aAAaV,EAAE,uCAAA;KAEf,sBAAA,cAAC8B,MAAMS,UAAQ;IACb1B,UAAU,CAACd;IACXyC,MAAM;IACN1B,OAAOhB,SAAS2C;IAChBC,UAAU,CAAC,EAAEC,QAAQ,EAAE7B,MAAK,EAAE,MAAOf,mBAAmB,CAACkB,OAAO;MAAE,GAAGA;MAAGwB,YAAY3B;IAAM,EAAA;IAC1Fc,aAAa5B,EAAE,uCAAA;;AAO7B;",
|
|
6
|
-
"names": ["React", "Input", "Select", "useTranslation", "Settings", "SettingsForm", "EditorInputModes", "EditorViewModes", "meta", "MarkdownSettings", "settings", "onSettingsChange", "t", "useTranslation", "meta", "id", "SettingsForm", "Viewport", "Section", "title", "ns", "Item", "description", "Select", "Root", "disabled", "value", "defaultViewMode", "onValueChange", "s", "TriggerButton", "Portal", "Content", "EditorViewModes", "map", "mode", "Option", "key", "Arrow", "editorInputMode", "placeholder", "EditorInputModes", "Input", "Switch", "checked", "toolbar", "onCheckedChange", "numberedHeadings", "folding", "experimental", "debug", "TextArea", "rows", "typewriter", "onChange", "target"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/blueprints/markdown-blueprint.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type AppCapabilities } from '@dxos/app-toolkit';\nimport { Blueprint, Template } from '@dxos/blueprints';\nimport { trim } from '@dxos/util';\n\nimport { Create, Open, Update } from '../operations/definitions';\n\nconst BLUEPRINT_KEY = 'org.dxos.blueprint.markdown';\n\nconst make = () =>\n Blueprint.make({\n key: BLUEPRINT_KEY,\n name: 'Markdown',\n description: 'Work with markdown documents. Preferred over raw database operations.',\n tools: Blueprint.toolDefinitions({ operations: [Create, Open, Update] }),\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\nconst blueprint: AppCapabilities.BlueprintDefinition = {\n key: BLUEPRINT_KEY,\n make,\n};\n\nexport default blueprint;\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;AAKA,SAASA,WAAWC,gBAAgB;AACpC,SAASC,YAAY;AAIrB,IAAMC,gBAAgB;AAEtB,IAAMC,OAAO,MACXC,UAAUD,KAAK;EACbE,KAAKH;EACLI,MAAM;EACNC,aAAa;EACbC,OAAOJ,UAAUK,gBAAgB;IAAEC,YAAY;MAACC;MAAQC;MAAMC;;EAAQ,CAAA;EACtEC,cAAcC,SAASZ,KAAK;;IAE1Ba,QAAQC;;;;;;;;UAQJ,KAAA;;;;;UAKA,KAAA;;EAEN,CAAA;AACF,CAAA;AAEF,IAAMC,YAAiD;EACrDb,KAAKH;EACLC;AACF;AAEA,IAAA,6BAAee;",
|
|
6
|
-
"names": ["Blueprint", "Template", "trim", "BLUEPRINT_KEY", "make", "Blueprint", "key", "name", "description", "tools", "toolDefinitions", "operations", "Create", "Open", "Update", "instructions", "Template", "source", "trim", "blueprint"]
|
|
7
|
-
}
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
__export
|
|
3
|
-
} from "./chunk-J5LGTIGS.mjs";
|
|
4
|
-
|
|
5
|
-
// src/types/capabilities.ts
|
|
6
|
-
import * as Schema from "effect/Schema";
|
|
7
|
-
import { Capability } from "@dxos/app-framework";
|
|
8
|
-
import { meta } from "#meta";
|
|
9
|
-
var MarkdownStateSchema = Schema.mutable(Schema.Struct({
|
|
10
|
-
viewMode: Schema.Record({
|
|
11
|
-
key: Schema.String,
|
|
12
|
-
value: Schema.String
|
|
13
|
-
})
|
|
14
|
-
}));
|
|
15
|
-
(function(MarkdownCapabilities2) {
|
|
16
|
-
MarkdownCapabilities2.Settings = Capability.make(`${meta.id}.capability.settings`);
|
|
17
|
-
MarkdownCapabilities2.State = Capability.make(`${meta.id}.capability.state`);
|
|
18
|
-
MarkdownCapabilities2.EditorState = Capability.make(`${meta.id}.capability.editor-state`);
|
|
19
|
-
MarkdownCapabilities2.EditorViews = Capability.make(`${meta.id}.capability.editor-views`);
|
|
20
|
-
MarkdownCapabilities2.Extensions = Capability.make(`${meta.id}.capability.extensions`);
|
|
21
|
-
})(MarkdownCapabilities || (MarkdownCapabilities = {}));
|
|
22
|
-
var MarkdownCapabilities;
|
|
23
|
-
|
|
24
|
-
// src/types/events.ts
|
|
25
|
-
import { AppActivationEvents } from "@dxos/app-toolkit";
|
|
26
|
-
import { meta as meta2 } from "#meta";
|
|
27
|
-
(function(MarkdownEvents2) {
|
|
28
|
-
MarkdownEvents2.SetupExtensions = AppActivationEvents.createStateEvent(`${meta2.id}.event.setup-extensions`);
|
|
29
|
-
})(MarkdownEvents || (MarkdownEvents = {}));
|
|
30
|
-
var MarkdownEvents;
|
|
31
|
-
|
|
32
|
-
// src/types/Markdown.ts
|
|
33
|
-
var Markdown_exports = {};
|
|
34
|
-
__export(Markdown_exports, {
|
|
35
|
-
Document: () => Document,
|
|
36
|
-
Settings: () => Settings2,
|
|
37
|
-
make: () => make
|
|
38
|
-
});
|
|
39
|
-
import * as Schema3 from "effect/Schema";
|
|
40
|
-
import { Annotation, Obj, Ref, Type } from "@dxos/echo";
|
|
41
|
-
import { DescriptionAnnotation, FormInputAnnotation, LabelAnnotation } from "@dxos/echo/internal";
|
|
42
|
-
import { Text } from "@dxos/schema";
|
|
43
|
-
|
|
44
|
-
// src/types/Settings.ts
|
|
45
|
-
var Settings_exports = {};
|
|
46
|
-
__export(Settings_exports, {
|
|
47
|
-
Settings: () => Settings
|
|
48
|
-
});
|
|
49
|
-
import * as Schema2 from "effect/Schema";
|
|
50
|
-
import { EditorInputMode, EditorViewMode } from "@dxos/ui-editor/types";
|
|
51
|
-
var Settings = Schema2.mutable(Schema2.Struct({
|
|
52
|
-
defaultViewMode: EditorViewMode,
|
|
53
|
-
editorInputMode: Schema2.optional(EditorInputMode),
|
|
54
|
-
experimental: Schema2.optional(Schema2.Boolean),
|
|
55
|
-
debug: Schema2.optional(Schema2.Boolean),
|
|
56
|
-
toolbar: Schema2.optional(Schema2.Boolean),
|
|
57
|
-
typewriter: Schema2.optional(Schema2.String),
|
|
58
|
-
// TODO(burdon): Per document settings.
|
|
59
|
-
numberedHeadings: Schema2.optional(Schema2.Boolean),
|
|
60
|
-
folding: Schema2.optional(Schema2.Boolean)
|
|
61
|
-
}));
|
|
62
|
-
|
|
63
|
-
// src/types/Markdown.ts
|
|
64
|
-
var Settings2 = Settings;
|
|
65
|
-
var Document = Schema3.Struct({
|
|
66
|
-
name: Schema3.optional(Schema3.String),
|
|
67
|
-
description: Schema3.optional(Schema3.String),
|
|
68
|
-
fallbackName: Schema3.String.pipe(FormInputAnnotation.set(false), Schema3.optional),
|
|
69
|
-
content: Ref.Ref(Text.Text).pipe(FormInputAnnotation.set(false))
|
|
70
|
-
}).pipe(Type.object({
|
|
71
|
-
typename: "org.dxos.type.document",
|
|
72
|
-
version: "0.1.0"
|
|
73
|
-
}), LabelAnnotation.set([
|
|
74
|
-
"name",
|
|
75
|
-
"fallbackName"
|
|
76
|
-
]), DescriptionAnnotation.set("description"), Annotation.IconAnnotation.set({
|
|
77
|
-
icon: "ph--text-aa--regular",
|
|
78
|
-
hue: "indigo"
|
|
79
|
-
}));
|
|
80
|
-
var make = ({ content = "", ...props } = {}) => {
|
|
81
|
-
const doc = Obj.make(Document, {
|
|
82
|
-
...props,
|
|
83
|
-
content: Ref.make(Text.make({
|
|
84
|
-
content
|
|
85
|
-
}))
|
|
86
|
-
});
|
|
87
|
-
Obj.setParent(doc.content.target, doc);
|
|
88
|
-
return doc;
|
|
89
|
-
};
|
|
90
|
-
|
|
91
|
-
export {
|
|
92
|
-
MarkdownStateSchema,
|
|
93
|
-
MarkdownCapabilities,
|
|
94
|
-
MarkdownEvents,
|
|
95
|
-
Settings_exports,
|
|
96
|
-
Markdown_exports
|
|
97
|
-
};
|
|
98
|
-
//# sourceMappingURL=chunk-46WIDM4R.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/types/capabilities.ts", "../../../src/types/events.ts", "../../../src/types/Markdown.ts", "../../../src/types/Settings.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type EditorView } from '@codemirror/view';\nimport { type Atom } from '@effect-atom/atom-react';\nimport * as Schema from 'effect/Schema';\n\nimport { Capability } from '@dxos/app-framework';\nimport { type EditorStateStore, type EditorViewMode } from '@dxos/ui-editor';\n\nimport { meta } from '#meta';\n\nimport type * as Markdown from './Markdown';\nimport { type MarkdownExtensionProvider } from './types';\n\n/** Schema for persisted markdown state. */\nexport const MarkdownStateSchema = Schema.mutable(\n Schema.Struct({\n viewMode: Schema.Record({ key: Schema.String, value: Schema.String }),\n }),\n);\n\nexport type MarkdownState = {\n viewMode: Record<string, EditorViewMode>;\n};\n\nexport type EditorViewEntry = { view: EditorView; documentId: string };\n\nexport type EditorViewRegistry = {\n register: (attendableId: string, view: EditorView, documentId: string) => void;\n unregister: (attendableId: string) => void;\n get: (attendableId: string) => EditorViewEntry | undefined;\n};\n\nexport namespace MarkdownCapabilities {\n export const Settings = Capability.make<Atom.Writable<Markdown.Settings>>(`${meta.id}.capability.settings`);\n\n /** Persisted state atom for view mode per document. */\n export const State = Capability.make<Atom.Writable<MarkdownState>>(`${meta.id}.capability.state`);\n\n /** Editor state store for cursor positions, scroll state, etc. */\n export const EditorState = Capability.make<EditorStateStore>(`${meta.id}.capability.editor-state`);\n\n /** Registry of active EditorView instances keyed by attendable ID. */\n export const EditorViews = Capability.make<EditorViewRegistry>(`${meta.id}.capability.editor-views`);\n\n // TODO(burdon): Move to ./types (external API)?\n export const Extensions = Capability.make<MarkdownExtensionProvider[]>(`${meta.id}.capability.extensions`);\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { type ActivationEvent } from '@dxos/app-framework';\nimport { AppActivationEvents } from '@dxos/app-toolkit';\n\nimport { meta } from '#meta';\n\nexport namespace MarkdownEvents {\n export const SetupExtensions: ActivationEvent.ActivationEvent = AppActivationEvents.createStateEvent(\n `${meta.id}.event.setup-extensions`,\n );\n}\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { Annotation, Obj, Ref, Type } from '@dxos/echo';\nimport { DescriptionAnnotation, FormInputAnnotation, LabelAnnotation } from '@dxos/echo/internal';\nimport { Text } from '@dxos/schema';\n\n// Re-export Settings as merged const/type (not as namespace).\nimport * as SettingsModule from './Settings';\nexport const Settings = SettingsModule.Settings;\nexport type Settings = SettingsModule.Settings;\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: Ref.Ref(Text.Text).pipe(FormInputAnnotation.set(false)),\n}).pipe(\n Type.object({\n typename: 'org.dxos.type.document',\n version: '0.1.0',\n }),\n LabelAnnotation.set(['name', 'fallbackName']),\n DescriptionAnnotation.set('description'),\n Annotation.IconAnnotation.set({\n icon: 'ph--text-aa--regular',\n hue: 'indigo',\n }),\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 const doc = Obj.make(Document, { ...props, content: Ref.make(Text.make({ content })) });\n // TODO(dmaretskyi): We need a better way to set parents when creating hierarchies.\n Obj.setParent(doc.content.target!, doc);\n return doc;\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\n// @import-as-namespace\n\nimport * as Schema from 'effect/Schema';\n\nimport { EditorInputMode, EditorViewMode } from '@dxos/ui-editor/types';\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 type Settings = Schema.Schema.Type<typeof Settings>;\n"],
|
|
5
|
-
"mappings": ";;;;;AAMA,YAAYA,YAAY;AAExB,SAASC,kBAAkB;AAG3B,SAASC,YAAY;AAMd,IAAMC,sBAA6BC,eACjCC,cAAO;EACZC,UAAiBC,cAAO;IAAEC,KAAYC;IAAQC,OAAcD;EAAO,CAAA;AACrE,CAAA,CAAA;UAeeE,uBAAAA;wBACFC,WAAWC,WAAWC,KAAuC,GAAGC,KAAKC,EAAE,sBAAsB;wBAG7FC,QAAQJ,WAAWC,KAAmC,GAAGC,KAAKC,EAAE,mBAAmB;wBAGnFE,cAAcL,WAAWC,KAAuB,GAAGC,KAAKC,EAAE,0BAA0B;wBAGpFG,cAAcN,WAAWC,KAAyB,GAAGC,KAAKC,EAAE,0BAA0B;wBAGtFI,aAAaP,WAAWC,KAAkC,GAAGC,KAAKC,EAAE,wBAAwB;AAC3G,GAdiBL,yBAAAA,uBAAAA,CAAAA,EAAAA;;;;AC9BjB,SAASU,2BAA2B;AAEpC,SAASC,QAAAA,aAAY;UAEJC,iBAAAA;kBACFC,kBAAmDC,oBAAoBC,iBAClF,GAAGC,MAAKC,EAAE,yBAAyB;AAEvC,GAJiBL,mBAAAA,iBAAAA,CAAAA,EAAAA;;;;ACTjB;;;kBAAAM;EAAA;;AAIA,YAAYC,aAAY;AAExB,SAASC,YAAYC,KAAKC,KAAKC,YAAY;AAC3C,SAASC,uBAAuBC,qBAAqBC,uBAAuB;AAC5E,SAASC,YAAY;;;ACRrB;;;;AAMA,YAAYC,aAAY;AAExB,SAASC,iBAAiBC,sBAAsB;AAKzC,IAAMC,WAAkBC,gBACtBC,eAAO;EACZC,iBAAiBC;EACjBC,iBAAwBC,iBAASC,eAAAA;EACjCC,cAAqBF,iBAAgBG,eAAO;EAC5CC,OAAcJ,iBAAgBG,eAAO;EACrCE,SAAgBL,iBAAgBG,eAAO;EACvCG,YAAmBN,iBAAgBO,cAAM;;EAEzCC,kBAAyBR,iBAAgBG,eAAO;EAChDM,SAAgBT,iBAAgBG,eAAO;AACzC,CAAA,CAAA;;;ADZK,IAAMO,YAA0BA;AAMhC,IAAMC,WAAkBC,eAAO;EACpCC,MAAaC,iBAAgBC,cAAM;EACnCC,aAAoBF,iBAAgBC,cAAM;EAC1CE,cAAqBF,eAAOG,KAAKC,oBAAoBC,IAAI,KAAA,GAAeN,gBAAQ;EAChFO,SAASC,IAAIA,IAAIC,KAAKA,IAAI,EAAEL,KAAKC,oBAAoBC,IAAI,KAAA,CAAA;AAC3D,CAAA,EAAGF,KACDM,KAAKC,OAAO;EACVC,UAAU;EACVC,SAAS;AACX,CAAA,GACAC,gBAAgBR,IAAI;EAAC;EAAQ;CAAe,GAC5CS,sBAAsBT,IAAI,aAAA,GAC1BU,WAAWC,eAAeX,IAAI;EAC5BY,MAAM;EACNC,KAAK;AACP,CAAA,CAAA;AAQK,IAAMC,OAAO,CAAC,EACnBb,UAAU,IACV,GAAGc,MAAAA,IACiE,CAAC,MAAC;AACtE,QAAMC,MAAMC,IAAIH,KAAKvB,UAAU;IAAE,GAAGwB;IAAOd,SAASC,IAAIY,KAAKX,KAAKW,KAAK;MAAEb;IAAQ,CAAA,CAAA;EAAI,CAAA;AAErFgB,MAAIC,UAAUF,IAAIf,QAAQkB,QAASH,GAAAA;AACnC,SAAOA;AACT;",
|
|
6
|
-
"names": ["Schema", "Capability", "meta", "MarkdownStateSchema", "mutable", "Struct", "viewMode", "Record", "key", "String", "value", "MarkdownCapabilities", "Settings", "Capability", "make", "meta", "id", "State", "EditorState", "EditorViews", "Extensions", "AppActivationEvents", "meta", "MarkdownEvents", "SetupExtensions", "AppActivationEvents", "createStateEvent", "meta", "id", "Settings", "Schema", "Annotation", "Obj", "Ref", "Type", "DescriptionAnnotation", "FormInputAnnotation", "LabelAnnotation", "Text", "Schema", "EditorInputMode", "EditorViewMode", "Settings", "mutable", "Struct", "defaultViewMode", "EditorViewMode", "editorInputMode", "optional", "EditorInputMode", "experimental", "Boolean", "debug", "toolbar", "typewriter", "String", "numberedHeadings", "folding", "Settings", "Document", "Struct", "name", "optional", "String", "description", "fallbackName", "pipe", "FormInputAnnotation", "set", "content", "Ref", "Text", "Type", "object", "typename", "version", "LabelAnnotation", "DescriptionAnnotation", "Annotation", "IconAnnotation", "icon", "hue", "make", "props", "doc", "Obj", "setParent", "target"]
|
|
7
|
-
}
|