@dxos/plugin-markdown 0.8.4-main.9be5663bfe → 0.8.4-main.abd8ff62ef
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/blueprints/index.mjs +3 -4
- package/dist/lib/browser/blueprints/index.mjs.map +2 -2
- package/dist/lib/browser/{chunk-XKUKZNUS.mjs → chunk-DNSKDWUL.mjs} +4 -6
- package/dist/lib/browser/chunk-DNSKDWUL.mjs.map +7 -0
- package/dist/lib/browser/{chunk-46WIDM4R.mjs → chunk-SW6IK2GJ.mjs} +39 -13
- package/dist/lib/browser/chunk-SW6IK2GJ.mjs.map +7 -0
- package/dist/lib/browser/{create-HSXPXCC5.mjs → create-SRADQOTE.mjs} +4 -5
- package/dist/lib/browser/create-SRADQOTE.mjs.map +7 -0
- package/dist/lib/browser/{create-markdown-WB7DH3UF.mjs → create-markdown-A2ERCEOZ.mjs} +4 -5
- package/dist/lib/browser/create-markdown-A2ERCEOZ.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +7 -545
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{open-N6PAX6DY.mjs → open-ANTKMST5.mjs} +4 -5
- package/dist/lib/browser/open-ANTKMST5.mjs.map +7 -0
- package/dist/lib/browser/operations/index.mjs +4 -5
- package/dist/lib/browser/operations/index.mjs.map +3 -3
- package/dist/lib/browser/{scroll-to-anchor-5M4F24AB.mjs → scroll-to-anchor-4RJ6MQ7I.mjs} +4 -5
- package/dist/lib/browser/scroll-to-anchor-4RJ6MQ7I.mjs.map +7 -0
- package/dist/lib/browser/{set-view-mode-NBNF2I5W.mjs → set-view-mode-2S7KKY7C.mjs} +4 -5
- package/dist/lib/browser/set-view-mode-2S7KKY7C.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +1 -2
- package/dist/lib/browser/{update-5QIRVGTL.mjs → update-markdown-CPM5KOQW.mjs} +7 -8
- package/dist/lib/browser/update-markdown-CPM5KOQW.mjs.map +7 -0
- package/dist/lib/node-esm/blueprints/index.mjs +3 -4
- package/dist/lib/node-esm/blueprints/index.mjs.map +2 -2
- package/dist/lib/node-esm/{chunk-E4BQCEXF.mjs → chunk-MWYFGI2J.mjs} +4 -6
- package/dist/lib/node-esm/chunk-MWYFGI2J.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-4MSJO6IJ.mjs → chunk-ZE6QJ4S5.mjs} +39 -13
- package/dist/lib/node-esm/chunk-ZE6QJ4S5.mjs.map +7 -0
- package/dist/lib/node-esm/{create-6Z2KYISY.mjs → create-6JGQPPQ6.mjs} +4 -5
- package/dist/lib/node-esm/create-6JGQPPQ6.mjs.map +7 -0
- package/dist/lib/node-esm/{create-markdown-JWQZICKY.mjs → create-markdown-KXSM2I2M.mjs} +4 -5
- package/dist/lib/{browser/create-markdown-WB7DH3UF.mjs.map → node-esm/create-markdown-KXSM2I2M.mjs.map} +1 -1
- package/dist/lib/node-esm/index.mjs +7 -545
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{open-DSNFRSNZ.mjs → open-GB6HNBHS.mjs} +4 -5
- package/dist/lib/node-esm/open-GB6HNBHS.mjs.map +7 -0
- package/dist/lib/node-esm/operations/index.mjs +4 -5
- package/dist/lib/node-esm/operations/index.mjs.map +3 -3
- package/dist/lib/node-esm/{scroll-to-anchor-D6SHGU2R.mjs → scroll-to-anchor-UABP74RR.mjs} +4 -5
- package/dist/lib/{browser/scroll-to-anchor-5M4F24AB.mjs.map → node-esm/scroll-to-anchor-UABP74RR.mjs.map} +1 -1
- package/dist/lib/node-esm/{set-view-mode-REYB4L7J.mjs → set-view-mode-JEDC5ZL7.mjs} +4 -5
- package/dist/lib/{browser/set-view-mode-NBNF2I5W.mjs.map → node-esm/set-view-mode-JEDC5ZL7.mjs.map} +1 -1
- package/dist/lib/node-esm/types/index.mjs +1 -2
- package/dist/lib/node-esm/{update-YMQAIKOF.mjs → update-markdown-AXLYHK6S.mjs} +7 -8
- package/dist/lib/node-esm/update-markdown-AXLYHK6S.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/index.d.ts +3 -21
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/node.d.ts +1 -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.map +1 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts +14 -6
- 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 +2 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts.map +1 -1
- package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts +2 -2
- 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/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/MarkdownEditableCard.d.ts +15 -0
- package/dist/types/src/containers/MarkdownCard/MarkdownEditableCard.d.ts.map +1 -0
- package/dist/types/src/containers/MarkdownCard/index.d.ts +1 -0
- package/dist/types/src/containers/MarkdownCard/index.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/MarkdownContainer/MarkdownContainer.d.ts +4 -4
- package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.d.ts.map +1 -1
- package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.stories.d.ts +70 -72
- package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.stories.d.ts.map +1 -1
- package/dist/types/src/containers/index.d.ts +1 -0
- 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/operations/create-markdown.d.ts +1 -1
- package/dist/types/src/operations/create-markdown.d.ts.map +1 -1
- package/dist/types/src/operations/create.d.ts +1 -1
- package/dist/types/src/operations/create.d.ts.map +1 -1
- package/dist/types/src/operations/definitions.d.ts +2 -2
- package/dist/types/src/operations/definitions.d.ts.map +1 -1
- package/dist/types/src/operations/index.d.ts +1 -1
- package/dist/types/src/operations/index.d.ts.map +1 -1
- package/dist/types/src/operations/open.d.ts +1 -1
- package/dist/types/src/operations/open.d.ts.map +1 -1
- package/dist/types/src/operations/scroll-to-anchor.d.ts +1 -1
- package/dist/types/src/operations/scroll-to-anchor.d.ts.map +1 -1
- package/dist/types/src/operations/set-view-mode.d.ts +1 -1
- package/dist/types/src/operations/set-view-mode.d.ts.map +1 -1
- package/dist/types/src/operations/{update.d.ts → update-markdown.d.ts} +2 -2
- package/dist/types/src/operations/update-markdown.d.ts.map +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 +8 -8
- package/dist/types/src/types/Markdown.d.ts.map +1 -1
- 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/capabilities.d.ts +3 -20
- package/dist/types/src/types/capabilities.d.ts.map +1 -1
- package/dist/types/src/types/events.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.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +60 -73
- package/src/{cli/plugin.ts → MarkdownPlugin.node.ts} +4 -2
- package/src/MarkdownPlugin.test.ts +26 -0
- package/src/MarkdownPlugin.tsx +6 -4
- package/src/blueprints/markdown-blueprint.ts +2 -3
- package/src/capabilities/app-graph-serializer.ts +1 -2
- package/src/capabilities/artifact-definition.ts +1 -1
- package/src/capabilities/blueprint-definition.ts +2 -0
- package/src/capabilities/index.ts +2 -1
- package/src/capabilities/node.ts +1 -1
- package/src/capabilities/operation-handler.ts +1 -1
- package/src/capabilities/react-surface.tsx +15 -8
- package/src/components/MarkdownEditor/MarkdownEditor.stories.tsx +3 -2
- package/src/components/MarkdownEditor/MarkdownEditor.tsx +4 -4
- package/src/components/MarkdownEditor/MarkdownEditorContent.tsx +3 -3
- package/src/components/MarkdownEditor/MarkdownEditorToolbar.tsx +4 -15
- package/src/components/MarkdownSettings/MarkdownSettings.stories.tsx +2 -1
- package/src/components/MarkdownSettings/MarkdownSettings.tsx +16 -119
- package/src/containers/MarkdownCard/MarkdownCard.stories.tsx +3 -2
- package/src/containers/MarkdownCard/MarkdownCard.tsx +13 -7
- package/src/containers/MarkdownCard/MarkdownEditableCard.tsx +42 -0
- package/src/containers/MarkdownCard/index.ts +1 -0
- package/src/containers/MarkdownCard/snippet.ts +27 -51
- package/src/containers/MarkdownContainer/MarkdownContainer.stories.tsx +4 -3
- package/src/containers/MarkdownContainer/MarkdownContainer.tsx +5 -4
- package/src/containers/index.ts +3 -0
- package/src/hooks/useExtensions.tsx +7 -8
- package/src/index.ts +5 -4
- package/src/operations/create-markdown.ts +1 -1
- package/src/operations/create.conversations.json +1 -1
- package/src/operations/create.test.ts +4 -5
- package/src/operations/create.ts +1 -1
- package/src/operations/definitions.ts +1 -1
- package/src/operations/index.ts +2 -2
- package/src/operations/open.ts +1 -1
- package/src/operations/scroll-to-anchor.ts +1 -1
- package/src/operations/set-view-mode.ts +1 -1
- package/src/operations/{update.ts → update-markdown.ts} +1 -1
- package/src/operations/update.conversations.json +1 -1
- package/src/operations/update.test.ts +4 -5
- package/src/translations.ts +2 -26
- package/src/types/Settings.ts +47 -10
- package/src/types/capabilities.ts +2 -1
- package/src/types/types.ts +4 -1
- package/src/util.tsx +1 -1
- package/dist/lib/browser/MarkdownSettings-YZFNSJJY.mjs +0 -121
- package/dist/lib/browser/MarkdownSettings-YZFNSJJY.mjs.map +0 -7
- package/dist/lib/browser/chunk-46WIDM4R.mjs.map +0 -7
- package/dist/lib/browser/chunk-J5LGTIGS.mjs +0 -10
- package/dist/lib/browser/chunk-J5LGTIGS.mjs.map +0 -7
- 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/open-N6PAX6DY.mjs.map +0 -7
- 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/chunk-4MSJO6IJ.mjs.map +0 -7
- 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/chunk-HSLMI22Q.mjs.map +0 -7
- 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.map +0 -7
- package/dist/lib/node-esm/create-markdown-JWQZICKY.mjs.map +0 -7
- package/dist/lib/node-esm/open-DSNFRSNZ.mjs.map +0 -7
- package/dist/lib/node-esm/scroll-to-anchor-D6SHGU2R.mjs.map +0 -7
- package/dist/lib/node-esm/set-view-mode-REYB4L7J.mjs.map +0 -7
- 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/operations/update.d.ts.map +0 -1
- package/src/cli/index.ts +0 -5
|
@@ -4,8 +4,10 @@ import {
|
|
|
4
4
|
MarkdownStateSchema,
|
|
5
5
|
Markdown_exports,
|
|
6
6
|
Settings_exports
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
|
|
7
|
+
} from "./chunk-SW6IK2GJ.mjs";
|
|
8
|
+
|
|
9
|
+
// src/index.ts
|
|
10
|
+
import { Plugin } from "@dxos/app-framework";
|
|
9
11
|
|
|
10
12
|
// src/meta.ts
|
|
11
13
|
import { trim } from "@dxos/util";
|
|
@@ -89,7 +91,7 @@ var getContentSnippet = (content = "", maxLines = 3) => {
|
|
|
89
91
|
var setFallbackName = debounce((doc, content = "") => {
|
|
90
92
|
const name = getFallbackName(content);
|
|
91
93
|
if (doc.fallbackName !== name) {
|
|
92
|
-
Obj.
|
|
94
|
+
Obj.update(doc, (doc2) => {
|
|
93
95
|
doc2.fallbackName = name;
|
|
94
96
|
});
|
|
95
97
|
}
|
|
@@ -113,551 +115,11 @@ var serializer = {
|
|
|
113
115
|
}
|
|
114
116
|
};
|
|
115
117
|
|
|
116
|
-
// src/
|
|
117
|
-
|
|
118
|
-
import * as Option from "effect/Option";
|
|
119
|
-
import { Plugin } from "@dxos/app-framework";
|
|
120
|
-
import { AppActivationEvents, AppPlugin } from "@dxos/app-toolkit";
|
|
121
|
-
import { Annotation, Ref } from "@dxos/echo";
|
|
122
|
-
import { createDocAccessor, getTextInRange } from "@dxos/echo-db";
|
|
123
|
-
import { Operation } from "@dxos/operation";
|
|
124
|
-
import { SpaceOperation } from "@dxos/plugin-space/operations";
|
|
125
|
-
import { translations as editorTranslations2 } from "@dxos/react-ui-editor";
|
|
126
|
-
import { Text } from "@dxos/schema";
|
|
127
|
-
import { MarkdownBlueprint } from "#blueprints";
|
|
128
|
-
import { AnchorSort, AppGraphSerializer, BlueprintDefinition, MarkdownSettings, MarkdownState, OperationHandler, ReactSurface } from "#capabilities";
|
|
129
|
-
import { meta as meta3 } from "#meta";
|
|
130
|
-
import { MarkdownOperation } from "#operations";
|
|
131
|
-
import { Markdown as Markdown3, MarkdownEvents as MarkdownEvents2 } from "#types";
|
|
132
|
-
|
|
133
|
-
// src/translations.ts
|
|
134
|
-
import { translations as editorTranslations } from "@dxos/react-ui-editor";
|
|
135
|
-
import { meta as meta2 } from "#meta";
|
|
136
|
-
import { Markdown as Markdown2 } from "#types";
|
|
137
|
-
var translations = [
|
|
138
|
-
{
|
|
139
|
-
"en-US": {
|
|
140
|
-
[Markdown2.Document.typename]: {
|
|
141
|
-
"typename.label": "Document",
|
|
142
|
-
"typename.label_zero": "Documents",
|
|
143
|
-
"typename.label_one": "Document",
|
|
144
|
-
"typename.label_other": "Documents",
|
|
145
|
-
"object-name.placeholder": "New document",
|
|
146
|
-
"add-object.label": "Add document",
|
|
147
|
-
"rename-object.label": "Rename document",
|
|
148
|
-
"delete-object.label": "Delete document",
|
|
149
|
-
"object-deleted.label": "Document deleted"
|
|
150
|
-
},
|
|
151
|
-
[meta2.id]: {
|
|
152
|
-
"plugin.name": "Editor",
|
|
153
|
-
"settings.title": "Editor settings",
|
|
154
|
-
"choose-markdown-from-space-dialog.title": "Choose one or more documents to add",
|
|
155
|
-
// TODO(burdon): Style-guide for user-facing text (e.g., hints, questions, capitalization, etc.)
|
|
156
|
-
"empty-choose-markdown-from-space.message": "None available; try creating a new one instead?",
|
|
157
|
-
"chooser-done.label": "Add selected",
|
|
158
|
-
"editor.placeholder": "Start typing\u2026",
|
|
159
|
-
"editor-input-mode.label": "Editor input mode",
|
|
160
|
-
"editor-input-mode.description": "Choose keyboard bindings for the editor.",
|
|
161
|
-
"select-editor-input-mode.placeholder": "Select editor input mode\u2026",
|
|
162
|
-
"settings.editor-input-mode.default.label": "Default",
|
|
163
|
-
"settings.editor-input-mode.vim.label": "Vim",
|
|
164
|
-
"settings.editor-input-mode.vscode.label": "VS Code",
|
|
165
|
-
"settings.toolbar.label": "Show toolbar",
|
|
166
|
-
"settings.toolbar.description": "Display a formatting toolbar above the editor.",
|
|
167
|
-
"settings.numbered-headings.label": "Numbered headings",
|
|
168
|
-
"settings.numbered-headings.description": "Automatically number heading levels in the document.",
|
|
169
|
-
"settings.folding.label": "Folding",
|
|
170
|
-
"settings.folding.description": "Allow collapsing and expanding sections by heading.",
|
|
171
|
-
"settings.experimental.label": "Enable experimental features",
|
|
172
|
-
"settings.experimental.description": "Turn on features that are still in development.",
|
|
173
|
-
"settings.debug.label": "Enable debugging features",
|
|
174
|
-
"settings.debug.description": "Show developer tools and diagnostics for the editor.",
|
|
175
|
-
"settings.debug-typewriter.label": "Typewriter script",
|
|
176
|
-
"settings.debug-typewriter.description": "Script to replay typed input for testing purposes.",
|
|
177
|
-
"settings.debug-typewriter.placeholder": "Typewriter script...",
|
|
178
|
-
"toggle-view-mode.label": "Toggle read-only",
|
|
179
|
-
"default-view-mode.label": "Default view mode",
|
|
180
|
-
"default-view-mode.description": "Set whether documents open in editing or read-only mode.",
|
|
181
|
-
"upload-image.label": "Upload image",
|
|
182
|
-
"fallback.title": "Untitled",
|
|
183
|
-
"navigate-to-document.label": "Open document",
|
|
184
|
-
"words.label": "words",
|
|
185
|
-
"words.label_zero": "words",
|
|
186
|
-
"words.label_one": "word",
|
|
187
|
-
"words.label_other": "words"
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
},
|
|
191
|
-
...editorTranslations
|
|
192
|
-
];
|
|
193
|
-
|
|
194
|
-
// src/MarkdownPlugin.tsx
|
|
195
|
-
var MarkdownPlugin = Plugin.define(meta3).pipe(AppPlugin.addBlueprintDefinitionModule({
|
|
196
|
-
activate: BlueprintDefinition
|
|
197
|
-
}), AppPlugin.addMetadataModule({
|
|
198
|
-
metadata: {
|
|
199
|
-
id: Markdown3.Document.typename,
|
|
200
|
-
metadata: {
|
|
201
|
-
// TODO(dmaretskyi): Remove label, icon and iconHue and query them of schema.
|
|
202
|
-
label: (object) => object.name || object.fallbackName,
|
|
203
|
-
icon: Annotation.IconAnnotation.get(Markdown3.Document).pipe(Option.getOrThrow).icon,
|
|
204
|
-
iconHue: Annotation.IconAnnotation.get(Markdown3.Document).pipe(Option.getOrThrow).hue ?? "white",
|
|
205
|
-
blueprints: [
|
|
206
|
-
MarkdownBlueprint.key
|
|
207
|
-
],
|
|
208
|
-
graphProps: {
|
|
209
|
-
managesAutofocus: true
|
|
210
|
-
},
|
|
211
|
-
// TODO(wittjosiah): Move out of metadata.
|
|
212
|
-
loadReferences: async (doc) => await Ref.Array.loadAll([
|
|
213
|
-
doc.content
|
|
214
|
-
]),
|
|
215
|
-
serializer,
|
|
216
|
-
// TODO(wittjosiah): Consider how to do generic comments without these.
|
|
217
|
-
comments: "anchored",
|
|
218
|
-
selectionMode: "multi-range",
|
|
219
|
-
getAnchorLabel: (doc, anchor) => {
|
|
220
|
-
if (doc.content) {
|
|
221
|
-
const [start, end] = anchor.split(":");
|
|
222
|
-
return getTextInRange(createDocAccessor(doc.content.target, [
|
|
223
|
-
"content"
|
|
224
|
-
]), start, end);
|
|
225
|
-
}
|
|
226
|
-
},
|
|
227
|
-
createObject: (props, options) => Effect.gen(function* () {
|
|
228
|
-
const object = Markdown3.make(props);
|
|
229
|
-
return yield* Operation.invoke(SpaceOperation.AddObject, {
|
|
230
|
-
object,
|
|
231
|
-
target: options.target,
|
|
232
|
-
hidden: true,
|
|
233
|
-
targetNodeId: options.targetNodeId
|
|
234
|
-
});
|
|
235
|
-
}),
|
|
236
|
-
scrollToAnchor: MarkdownOperation.ScrollToAnchor
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
}), AppPlugin.addOperationHandlerModule({
|
|
240
|
-
activate: OperationHandler
|
|
241
|
-
}), AppPlugin.addSchemaModule({
|
|
242
|
-
schema: [
|
|
243
|
-
Markdown3.Document,
|
|
244
|
-
Text.Text
|
|
245
|
-
]
|
|
246
|
-
}), AppPlugin.addSurfaceModule({
|
|
247
|
-
activate: ReactSurface,
|
|
248
|
-
activatesBefore: [
|
|
249
|
-
MarkdownEvents2.SetupExtensions
|
|
250
|
-
]
|
|
251
|
-
}), AppPlugin.addTranslationsModule({
|
|
252
|
-
translations: [
|
|
253
|
-
...translations,
|
|
254
|
-
...editorTranslations2
|
|
255
|
-
]
|
|
256
|
-
}), Plugin.addModule({
|
|
257
|
-
activatesOn: AppActivationEvents.SetupSettings,
|
|
258
|
-
activate: MarkdownSettings
|
|
259
|
-
}), Plugin.addModule({
|
|
260
|
-
id: "state",
|
|
261
|
-
// TODO(wittjosiah): Does not integrate with settings store.
|
|
262
|
-
// Should this be a different event?
|
|
263
|
-
// Should settings store be renamed to be more generic?
|
|
264
|
-
activatesOn: AppActivationEvents.SetupSettings,
|
|
265
|
-
activate: MarkdownState
|
|
266
|
-
}), Plugin.addModule({
|
|
267
|
-
activatesOn: AppActivationEvents.AppGraphReady,
|
|
268
|
-
activate: AppGraphSerializer
|
|
269
|
-
}), Plugin.addModule({
|
|
270
|
-
// TODO(wittjosiah): More relevant event?
|
|
271
|
-
activatesOn: AppActivationEvents.AppGraphReady,
|
|
272
|
-
activate: AnchorSort
|
|
273
|
-
}), Plugin.make);
|
|
274
|
-
|
|
275
|
-
// src/components/index.ts
|
|
276
|
-
import { lazy } from "react";
|
|
277
|
-
|
|
278
|
-
// src/components/MarkdownEditor/MarkdownEditor.tsx
|
|
279
|
-
import { createContext } from "@radix-ui/react-context";
|
|
280
|
-
import React4, { useCallback as useCallback3, useMemo as useMemo2, useState as useState2 } from "react";
|
|
281
|
-
import { createPortal as createPortal2 } from "react-dom";
|
|
282
|
-
import { Surface } from "@dxos/app-framework/ui";
|
|
283
|
-
import { Obj as Obj2 } from "@dxos/echo";
|
|
284
|
-
import { DXN } from "@dxos/keys";
|
|
285
|
-
import { useClient } from "@dxos/react-client";
|
|
286
|
-
import { createEditorController, useEditorContext } from "@dxos/react-ui-editor";
|
|
287
|
-
import { composable as composable2, composableProps as composableProps2 } from "@dxos/ui-theme";
|
|
288
|
-
import { isNonNullable } from "@dxos/util";
|
|
289
|
-
import { useEditorMenuOptions, useExtensions } from "#hooks";
|
|
290
|
-
|
|
291
|
-
// src/components/MarkdownEditor/MarkdownEditorContent.tsx
|
|
292
|
-
import { RegistryContext } from "@effect-atom/atom-react";
|
|
293
|
-
import React, { forwardRef, useCallback, useContext, useEffect, useImperativeHandle, useMemo } from "react";
|
|
294
|
-
import { useCapabilities } from "@dxos/app-framework/ui";
|
|
295
|
-
import { useThemeContext, useTranslation } from "@dxos/react-ui";
|
|
296
|
-
import { useTextEditor } from "@dxos/react-ui-editor";
|
|
297
|
-
import { compactSlots, createBasicExtensions, createMarkdownExtensions, createThemeExtensions, dropFile, documentSlots, formattingListener, processEditorPayload, editorClassNames } from "@dxos/ui-editor";
|
|
298
|
-
import { mx } from "@dxos/ui-theme";
|
|
299
|
-
import { isTruthy } from "@dxos/util";
|
|
300
|
-
import { meta as meta4 } from "#meta";
|
|
301
|
-
import { MarkdownCapabilities as MarkdownCapabilities2 } from "#types";
|
|
302
|
-
var MarkdownEditorContent = /* @__PURE__ */ forwardRef(({ classNames, id, attendableId, role, compact, viewMode, initialValue, editorStateStore, toolbarState, extensions, slots, onFileUpload }, forwardedRef) => {
|
|
303
|
-
const { t } = useTranslation(meta4.id);
|
|
304
|
-
const { themeMode } = useThemeContext();
|
|
305
|
-
const registry = useContext(RegistryContext);
|
|
306
|
-
const updateToolbarState = useCallback((formatting) => {
|
|
307
|
-
if (toolbarState) {
|
|
308
|
-
registry.set(toolbarState, {
|
|
309
|
-
...registry.get(toolbarState),
|
|
310
|
-
...formatting
|
|
311
|
-
});
|
|
312
|
-
}
|
|
313
|
-
}, [
|
|
314
|
-
registry,
|
|
315
|
-
toolbarState
|
|
316
|
-
]);
|
|
317
|
-
const { scrollTo, selection } = useMemo(() => editorStateStore?.getState(id) ?? {}, [
|
|
318
|
-
id
|
|
319
|
-
]);
|
|
320
|
-
const { parentRef, view: editorView, focusAttributes } = useTextEditor(() => ({
|
|
321
|
-
...role !== "section" && {
|
|
322
|
-
id,
|
|
323
|
-
scrollTo,
|
|
324
|
-
selection,
|
|
325
|
-
selectionEnd: true
|
|
326
|
-
},
|
|
327
|
-
initialValue,
|
|
328
|
-
extensions: [
|
|
329
|
-
createBasicExtensions({
|
|
330
|
-
readOnly: viewMode === "readonly",
|
|
331
|
-
placeholder: t("editor.placeholder"),
|
|
332
|
-
scrollPastEnd: !compact,
|
|
333
|
-
search: true
|
|
334
|
-
}),
|
|
335
|
-
createThemeExtensions({
|
|
336
|
-
themeMode,
|
|
337
|
-
slots: slots ?? (compact ? compactSlots : documentSlots),
|
|
338
|
-
syntaxHighlighting: true
|
|
339
|
-
}),
|
|
340
|
-
createMarkdownExtensions(),
|
|
341
|
-
toolbarState && formattingListener(updateToolbarState),
|
|
342
|
-
role !== "section" && onFileUpload && dropFile({
|
|
343
|
-
// TODO(wittjosiah): Factor out to file uploader plugin.
|
|
344
|
-
onDrop: async (view, { files }) => {
|
|
345
|
-
const file = files[0];
|
|
346
|
-
const info = file && onFileUpload ? await onFileUpload(file) : void 0;
|
|
347
|
-
if (info) {
|
|
348
|
-
processEditorPayload(view, {
|
|
349
|
-
type: "image",
|
|
350
|
-
data: info.url
|
|
351
|
-
});
|
|
352
|
-
}
|
|
353
|
-
}
|
|
354
|
-
}),
|
|
355
|
-
extensions
|
|
356
|
-
].filter(isTruthy)
|
|
357
|
-
}), [
|
|
358
|
-
id,
|
|
359
|
-
viewMode,
|
|
360
|
-
themeMode,
|
|
361
|
-
extensions
|
|
362
|
-
]);
|
|
363
|
-
useImperativeHandle(forwardedRef, () => editorView, [
|
|
364
|
-
editorView
|
|
365
|
-
]);
|
|
366
|
-
const [editorViewRegistry] = useCapabilities(MarkdownCapabilities2.EditorViews);
|
|
367
|
-
useEffect(() => {
|
|
368
|
-
if (editorView && editorViewRegistry) {
|
|
369
|
-
editorViewRegistry.register(attendableId ?? id, editorView, id);
|
|
370
|
-
return () => editorViewRegistry.unregister(attendableId ?? id);
|
|
371
|
-
}
|
|
372
|
-
}, [
|
|
373
|
-
editorView,
|
|
374
|
-
editorViewRegistry,
|
|
375
|
-
attendableId,
|
|
376
|
-
id
|
|
377
|
-
]);
|
|
378
|
-
useTest(editorView);
|
|
379
|
-
return /* @__PURE__ */ React.createElement("div", {
|
|
380
|
-
...focusAttributes,
|
|
381
|
-
className: mx(editorClassNames(role), classNames),
|
|
382
|
-
role: "none",
|
|
383
|
-
"data-testid": "composer.markdownRoot",
|
|
384
|
-
"data-popover-collision-boundary": true,
|
|
385
|
-
ref: parentRef
|
|
386
|
-
});
|
|
387
|
-
});
|
|
388
|
-
var useTest = (view) => {
|
|
389
|
-
useEffect(() => {
|
|
390
|
-
const composer = window.composer;
|
|
391
|
-
if (composer) {
|
|
392
|
-
composer.editorView = view;
|
|
393
|
-
}
|
|
394
|
-
}, [
|
|
395
|
-
view
|
|
396
|
-
]);
|
|
397
|
-
};
|
|
398
|
-
|
|
399
|
-
// src/components/MarkdownEditor/MarkdownEditorToolbar.tsx
|
|
400
|
-
import React3, { useCallback as useCallback2, useState } from "react";
|
|
401
|
-
import { invariant } from "@dxos/invariant";
|
|
402
|
-
import { EditorToolbar } from "@dxos/react-ui-editor";
|
|
403
|
-
import { composable, composableProps } from "@dxos/ui-theme";
|
|
404
|
-
|
|
405
|
-
// src/components/MarkdownEditor/FileUpload.tsx
|
|
406
|
-
import React2, { forwardRef as forwardRef2, useEffect as useEffect2, useImperativeHandle as useImperativeHandle2 } from "react";
|
|
407
|
-
import { createPortal } from "react-dom";
|
|
408
|
-
import { useDropzone } from "react-dropzone";
|
|
409
|
-
import { addLink } from "@dxos/ui-editor";
|
|
410
|
-
var IMAGE_FILES = [
|
|
411
|
-
".jpg",
|
|
412
|
-
".jpeg",
|
|
413
|
-
".png",
|
|
414
|
-
".gif"
|
|
415
|
-
];
|
|
416
|
-
var FileUpload = /* @__PURE__ */ forwardRef2(({ editorView, onFileUpload }, forwardedRef) => {
|
|
417
|
-
const { acceptedFiles, open, inputRef } = useDropzone({
|
|
418
|
-
disabled: !onFileUpload,
|
|
419
|
-
multiple: false,
|
|
420
|
-
noDrag: true,
|
|
421
|
-
accept: {
|
|
422
|
-
"image/*": IMAGE_FILES
|
|
423
|
-
}
|
|
424
|
-
});
|
|
425
|
-
useImperativeHandle2(forwardedRef, () => open, []);
|
|
426
|
-
useEffect2(() => {
|
|
427
|
-
if (editorView && acceptedFiles.length && onFileUpload) {
|
|
428
|
-
requestAnimationFrame(async () => {
|
|
429
|
-
const f = acceptedFiles[0];
|
|
430
|
-
const file = new File([
|
|
431
|
-
f
|
|
432
|
-
], f.name, {
|
|
433
|
-
type: f.type,
|
|
434
|
-
lastModified: f.lastModified
|
|
435
|
-
});
|
|
436
|
-
const info = await onFileUpload(file);
|
|
437
|
-
if (info) {
|
|
438
|
-
addLink({
|
|
439
|
-
url: info.url,
|
|
440
|
-
image: true
|
|
441
|
-
})(editorView);
|
|
442
|
-
}
|
|
443
|
-
});
|
|
444
|
-
}
|
|
445
|
-
}, [
|
|
446
|
-
editorView,
|
|
447
|
-
acceptedFiles,
|
|
448
|
-
onFileUpload
|
|
449
|
-
]);
|
|
450
|
-
if (!onFileUpload) {
|
|
451
|
-
return null;
|
|
452
|
-
}
|
|
453
|
-
return /* @__PURE__ */ React2.createElement(React2.Fragment, null, /* @__PURE__ */ createPortal(/* @__PURE__ */ React2.createElement("input", {
|
|
454
|
-
ref: inputRef
|
|
455
|
-
}), document.body), " ");
|
|
456
|
-
});
|
|
457
|
-
|
|
458
|
-
// src/components/MarkdownEditor/MarkdownEditorToolbar.tsx
|
|
459
|
-
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-markdown/src/components/MarkdownEditor/MarkdownEditorToolbar.tsx";
|
|
460
|
-
var MarkdownEditorToolbar = composable(({ id, role, state, editorView, customActions, onAction, onFileUpload, onViewModeChange, ...props }, forwardedRef) => {
|
|
461
|
-
const { className, ...rest } = composableProps(props);
|
|
462
|
-
const [upload, setUpload] = useState(null);
|
|
463
|
-
const uploadRef = useCallback2((next) => setUpload(() => next), []);
|
|
464
|
-
const getView = useCallback2(() => {
|
|
465
|
-
invariant(editorView, void 0, {
|
|
466
|
-
F: __dxlog_file,
|
|
467
|
-
L: 31,
|
|
468
|
-
S: void 0,
|
|
469
|
-
A: [
|
|
470
|
-
"editorView",
|
|
471
|
-
""
|
|
472
|
-
]
|
|
473
|
-
});
|
|
474
|
-
return editorView;
|
|
475
|
-
}, [
|
|
476
|
-
editorView
|
|
477
|
-
]);
|
|
478
|
-
if (!editorView) {
|
|
479
|
-
return /* @__PURE__ */ React3.createElement("div", {
|
|
480
|
-
className,
|
|
481
|
-
...rest,
|
|
482
|
-
ref: forwardedRef
|
|
483
|
-
});
|
|
484
|
-
}
|
|
485
|
-
return /* @__PURE__ */ React3.createElement("div", {
|
|
486
|
-
role: "none",
|
|
487
|
-
className: "contents",
|
|
488
|
-
ref: forwardedRef
|
|
489
|
-
}, /* @__PURE__ */ React3.createElement(EditorToolbar, {
|
|
490
|
-
...rest,
|
|
491
|
-
classNames: className,
|
|
492
|
-
attendableId: id,
|
|
493
|
-
role,
|
|
494
|
-
state,
|
|
495
|
-
customActions,
|
|
496
|
-
getView,
|
|
497
|
-
onAction,
|
|
498
|
-
onImageUpload: upload ?? void 0,
|
|
499
|
-
onViewModeChange
|
|
500
|
-
}), onFileUpload && /* @__PURE__ */ React3.createElement(FileUpload, {
|
|
501
|
-
ref: uploadRef,
|
|
502
|
-
editorView,
|
|
503
|
-
onFileUpload
|
|
504
|
-
}));
|
|
505
|
-
});
|
|
506
|
-
|
|
507
|
-
// src/components/MarkdownEditor/MarkdownEditor.tsx
|
|
508
|
-
var [MarkdownEditorContextProvider, useMarkdownEditorContext] = createContext("MarkdownEditor.Context");
|
|
509
|
-
var MarkdownEditorProvider = ({ children, id, attendableId, object, settings, compact, viewMode, selectionManager, editorStateStore, extensions: extensionsProp, slashCommandGroups, onLinkQuery, onSelectObject, onAction, onFileUpload, onViewModeChange }) => {
|
|
510
|
-
const [previewBlocks, setPreviewBlocks] = useState2([]);
|
|
511
|
-
const previewOptions = useMemo2(() => ({
|
|
512
|
-
db: Obj2.isObject(object) ? Obj2.getDatabase(object) : void 0,
|
|
513
|
-
addBlockContainer: (block) => {
|
|
514
|
-
setPreviewBlocks((prev) => [
|
|
515
|
-
...prev,
|
|
516
|
-
block
|
|
517
|
-
]);
|
|
518
|
-
},
|
|
519
|
-
removeBlockContainer: ({ link }) => {
|
|
520
|
-
setPreviewBlocks((prev) => prev.filter(({ link: prevLink }) => prevLink.dxn !== link.dxn));
|
|
521
|
-
}
|
|
522
|
-
}), [
|
|
523
|
-
object
|
|
524
|
-
]);
|
|
525
|
-
const menuOptions = useEditorMenuOptions({
|
|
526
|
-
slashCommandGroups,
|
|
527
|
-
onLinkQuery
|
|
528
|
-
});
|
|
529
|
-
const coreExtensions = useExtensions({
|
|
530
|
-
id,
|
|
531
|
-
object,
|
|
532
|
-
compact,
|
|
533
|
-
viewMode,
|
|
534
|
-
selectionManager,
|
|
535
|
-
editorStateStore,
|
|
536
|
-
previewOptions,
|
|
537
|
-
settings,
|
|
538
|
-
onSelectObject
|
|
539
|
-
});
|
|
540
|
-
const extensions = useMemo2(() => [
|
|
541
|
-
coreExtensions,
|
|
542
|
-
extensionsProp
|
|
543
|
-
].filter(isNonNullable).flat(), [
|
|
544
|
-
coreExtensions,
|
|
545
|
-
extensionsProp
|
|
546
|
-
]);
|
|
547
|
-
const editorRootProps = useMemo2(() => ({
|
|
548
|
-
extensions,
|
|
549
|
-
viewMode,
|
|
550
|
-
getMenu: menuOptions.getMenu,
|
|
551
|
-
trigger: menuOptions.trigger,
|
|
552
|
-
placeholder: menuOptions.placeholder,
|
|
553
|
-
...menuOptions.filter !== void 0 ? {
|
|
554
|
-
filter: menuOptions.filter
|
|
555
|
-
} : {},
|
|
556
|
-
...menuOptions.triggerKey !== void 0 ? {
|
|
557
|
-
triggerKey: menuOptions.triggerKey
|
|
558
|
-
} : {}
|
|
559
|
-
}), [
|
|
560
|
-
extensions,
|
|
561
|
-
viewMode,
|
|
562
|
-
menuOptions
|
|
563
|
-
]);
|
|
564
|
-
const markdownContextValue = useMemo2(() => ({
|
|
565
|
-
id,
|
|
566
|
-
attendableId,
|
|
567
|
-
compact,
|
|
568
|
-
viewMode,
|
|
569
|
-
previewBlocks,
|
|
570
|
-
onAction,
|
|
571
|
-
onFileUpload,
|
|
572
|
-
onViewModeChange
|
|
573
|
-
}), [
|
|
574
|
-
id,
|
|
575
|
-
attendableId,
|
|
576
|
-
compact,
|
|
577
|
-
viewMode,
|
|
578
|
-
previewBlocks,
|
|
579
|
-
onAction,
|
|
580
|
-
onFileUpload,
|
|
581
|
-
onViewModeChange
|
|
582
|
-
]);
|
|
583
|
-
return /* @__PURE__ */ React4.createElement(MarkdownEditorContextProvider, markdownContextValue, children(editorRootProps));
|
|
584
|
-
};
|
|
585
|
-
MarkdownEditorProvider.displayName = "MarkdownEditor.Provider";
|
|
586
|
-
var MARKDOWN_EDITOR_CONTENT_NAME = "MarkdownEditor.Content";
|
|
587
|
-
var MarkdownEditorContent2 = composable2(({ ...props }, _forwardedRef) => {
|
|
588
|
-
const { id, attendableId, compact, viewMode, onFileUpload } = useMarkdownEditorContext(MARKDOWN_EDITOR_CONTENT_NAME);
|
|
589
|
-
const { extensions, setController, state } = useEditorContext(MARKDOWN_EDITOR_CONTENT_NAME);
|
|
590
|
-
const handleRef = useCallback3((view) => {
|
|
591
|
-
setController(createEditorController(view));
|
|
592
|
-
}, [
|
|
593
|
-
setController
|
|
594
|
-
]);
|
|
595
|
-
return /* @__PURE__ */ React4.createElement(MarkdownEditorContent, {
|
|
596
|
-
...composableProps2(props),
|
|
597
|
-
id,
|
|
598
|
-
attendableId,
|
|
599
|
-
compact,
|
|
600
|
-
viewMode,
|
|
601
|
-
toolbarState: state,
|
|
602
|
-
extensions,
|
|
603
|
-
onFileUpload,
|
|
604
|
-
ref: handleRef
|
|
605
|
-
});
|
|
606
|
-
});
|
|
607
|
-
MarkdownEditorContent2.displayName = MARKDOWN_EDITOR_CONTENT_NAME;
|
|
608
|
-
var MARKDOWN_EDITOR_TOOLBAR_NAME = "MarkdownEditor.Toolbar";
|
|
609
|
-
var MarkdownEditorToolbar2 = (props) => {
|
|
610
|
-
const { id, attendableId, onAction, onFileUpload, onViewModeChange } = useMarkdownEditorContext(MARKDOWN_EDITOR_TOOLBAR_NAME);
|
|
611
|
-
const { controller, state } = useEditorContext(MARKDOWN_EDITOR_TOOLBAR_NAME);
|
|
612
|
-
return /* @__PURE__ */ React4.createElement(MarkdownEditorToolbar, {
|
|
613
|
-
...props,
|
|
614
|
-
id: attendableId ?? id,
|
|
615
|
-
editorView: controller?.view ?? void 0,
|
|
616
|
-
state,
|
|
617
|
-
onAction,
|
|
618
|
-
onFileUpload,
|
|
619
|
-
onViewModeChange
|
|
620
|
-
});
|
|
621
|
-
};
|
|
622
|
-
MarkdownEditorToolbar2.displayName = MARKDOWN_EDITOR_TOOLBAR_NAME;
|
|
623
|
-
var MARKDOWN_EDITOR_BLOCKS_NAME = "MarkdownEditor.Blocks";
|
|
624
|
-
var MarkdownEditorBlocks = (_props) => {
|
|
625
|
-
const { previewBlocks } = useMarkdownEditorContext(MARKDOWN_EDITOR_BLOCKS_NAME);
|
|
626
|
-
return /* @__PURE__ */ React4.createElement(React4.Fragment, null, previewBlocks.map(({ link, el }) => /* @__PURE__ */ React4.createElement(PreviewBlock, {
|
|
627
|
-
key: link.dxn,
|
|
628
|
-
link,
|
|
629
|
-
el
|
|
630
|
-
})));
|
|
631
|
-
};
|
|
632
|
-
MarkdownEditorBlocks.displayName = MARKDOWN_EDITOR_BLOCKS_NAME;
|
|
633
|
-
var PreviewBlock = ({ el, link }) => {
|
|
634
|
-
const client = useClient();
|
|
635
|
-
const dxn = DXN.parse(link.dxn);
|
|
636
|
-
const subject = client.graph.makeRef(dxn).target;
|
|
637
|
-
const data = useMemo2(() => ({
|
|
638
|
-
subject
|
|
639
|
-
}), [
|
|
640
|
-
subject
|
|
641
|
-
]);
|
|
642
|
-
return /* @__PURE__ */ createPortal2(/* @__PURE__ */ React4.createElement(Surface.Surface, {
|
|
643
|
-
role: "card--content",
|
|
644
|
-
data,
|
|
645
|
-
limit: 1
|
|
646
|
-
}), el);
|
|
647
|
-
};
|
|
648
|
-
var MarkdownEditor = {
|
|
649
|
-
Content: MarkdownEditorContent2,
|
|
650
|
-
Toolbar: MarkdownEditorToolbar2,
|
|
651
|
-
Blocks: MarkdownEditorBlocks
|
|
652
|
-
};
|
|
653
|
-
|
|
654
|
-
// src/components/index.ts
|
|
655
|
-
var MarkdownSettings2 = lazy(() => import("./MarkdownSettings-YZFNSJJY.mjs"));
|
|
118
|
+
// src/index.ts
|
|
119
|
+
var MarkdownPlugin = Plugin.lazy(meta, () => import("#plugin"));
|
|
656
120
|
export {
|
|
657
121
|
Markdown_exports as Markdown,
|
|
658
122
|
MarkdownCapabilities,
|
|
659
|
-
MarkdownEditor,
|
|
660
|
-
MarkdownEditorProvider,
|
|
661
123
|
MarkdownEvents,
|
|
662
124
|
MarkdownPlugin,
|
|
663
125
|
MarkdownStateSchema,
|